smobiler介紹(二)

相似開發WinForm的方式,使用C#開發Android和IOS的移動應用?聽起來感受難以想象,那麼Smobiler平臺究竟是如何實現的呢,這裏給你們介紹一下。html

客戶端

  Smobiler分爲兩種客戶端,一種是開發版,一種是打包版web

開發版:顧名思義,就是用來作開發時候的版本,在上面一章節中,你們其實都用過了,就是掃描服務端的二維碼,添加服務端後,就能夠進行開發調試了。這個客戶端是官方的應用,能夠在以下地址下載:https://www.smobiler.com/download.html數據庫

  IOS對應蘋果客戶端,Android對應安卓客戶端,內測版本是表明尚未正式發佈的版本,好比上面,正式版本是4.5,內測版本是4.6,內測版本官方說是每週更新,和內部開發保持一致。因此若是有一些Bug類的,內測版本很快能解決,不用等正式版了。下面是開發版的樣子。c#

打包版:打包版的意思就是把生成本身獨立可安裝的APP,能夠自定義應用名稱,應用圖標,企業用戶還能夠自定義啓動頁面,關於頁等等。能夠分別打包Android和IOS的,不過IOS的是要去買蘋果的開發者帳號的,這個具體有文檔,去看官方的文檔吧。 https://www.smobiler.com/yunapp.aspx#應用打包api

  另外對於客戶端的可擴展性,Smobiler推出了插件開發,就是能夠開發原生的Android或者IOS的功能,而後集成到Smobiler的客戶端裏,這個方便了一些須要個性化實現的功能。仍是很方便的,能夠看文檔 https://www.smobiler.com/guide/plugin.aspx緩存

服務端

  Smobiler的服務端其實就是一個完整的.Net Framework,因此你須要實現Socket、WebService、WCF,以及調用數據庫接口,甚至COM接口都是能夠的,只要是.Net Framework支持的,Smobiler都支持。另外若是你須要修改界面和代碼,不須要修改客戶端,只須要在服務端上修改,從新佈置就能夠了。另外若是你關掉客戶端,再從新打開,那麼你還會回到上次你操做的地方,並且數據也不會丟失,你可能會說,這就是一個Web吧,其實不是,由於客戶端是原生的,另外若是是Web,都是無狀態的,可是Smobiler的界面是有狀態的。因此它不是一個Web。那麼它是什麼呢?app

  你能夠這麼理解,一個原生展示的客戶端 + 相似於WebForm+WinForm結合體的服務端。這樣來理解就簡單多了。客戶端只是一個展示層,把客戶端上輸入或者操做經過socket與發送給服務端作處理,服務端把界面和業務邏輯經過socket發送給客戶端顯示。因此服務端緩存和客戶端的數據和狀態,這也解釋了爲何關閉客戶端,還能回到上一次操做的地方。由於你的數據在服務端。另外也解釋了爲何修改業務和界面,只須要修改服務端便可。總結來講:SmobilerDesigner經過實現.NET的component組件方式,藉助Visual Studio集成開發環境來開發移動應用。SmobilerClient是通用的框架客戶端,使用自有的stml協議實現客戶端的原生控件渲染和事件。框架

  這種方式可能有人說好,有人說很差,不過考慮開發速度,開發成本,開發門檻(好比一個只會c#的簡單開發的人,能夠很快開發出一個應用出來,不用去學習Android或者IOS的複雜的知道,甚至也不用學習webapi這種接口,這就產生了價值)。因此Smobiler也提供了一些開源的產品,好比SmoONE是面向OA的,SmoSEC是面向設備管理的,SmoWMS是面向倉庫管理的,這些開源的項目能夠拿來修修改改就能夠上手了,進一步下降使用門檻。 socket

相關文章
相關標籤/搜索