類似開發(fā)WinForm的方式,使用C#開發(fā)Android和IOS的移動應(yīng)用?聽起來感覺不可思議,那么Smobiler平臺到底是如何實現(xiàn)的呢,這里給大家介紹一下。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、萬寧網(wǎng)絡(luò)推廣、小程序開發(fā)、萬寧網(wǎng)絡(luò)營銷、萬寧企業(yè)策劃、萬寧品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供萬寧建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
Smobiler分為兩種客戶端,一種是開發(fā)版,一種是打包版
開發(fā)版:顧名思義,就是用來做開發(fā)時候的版本,在上面一章節(jié)中,大家其實都用過了,就是掃描服務(wù)端的二維碼,添加服務(wù)端后,就可以進(jìn)行開發(fā)調(diào)試了。這個客戶端是官方的應(yīng)用,可以在如下地址下載:https://www.smobiler.com/download.html
IOS對應(yīng)蘋果客戶端,Android對應(yīng)安卓客戶端,內(nèi)測版本是代表還沒有正式發(fā)布的版本,比如上面,正式版本是4.5,內(nèi)測版本是4.6,內(nèi)測版本官方說是每周更新,和內(nèi)部開發(fā)保持一致。所以如果有一些Bug類的,內(nèi)測版本很快能解決,不用等正式版了。下面是開發(fā)版的樣子。
打包版:打包版的意思就是把生成自己獨立可安裝的APP,可以自定義應(yīng)用名稱,應(yīng)用圖標(biāo),企業(yè)用戶還可以自定義啟動頁面,關(guān)于頁等等。可以分別打包Android和IOS的,不過IOS的是要去買蘋果的開發(fā)者賬號的,這個具體有文檔,去看官方的文檔吧。 https://www.smobiler.com/yunapp.aspx#應(yīng)用打包
另外對于客戶端的可擴(kuò)展性,Smobiler推出了插件開發(fā),就是可以開發(fā)原生的Android或者IOS的功能,然后集成到Smobiler的客戶端里,這個方便了一些需要個性化實現(xiàn)的功能。還是很方便的,可以看文檔 https://www.smobiler.com/guide/plugin.aspx
Smobiler的服務(wù)端其實就是一個完整的.Net Framework,所以你需要實現(xiàn)Socket、WebService、WCF,以及調(diào)用數(shù)據(jù)庫接口,甚至COM接口都是可以的,只要是.Net Framework支持的,Smobiler都支持。另外如果你需要修改界面和代碼,不需要修改客戶端,只需要在服務(wù)端上修改,重新布置就可以了。另外如果你關(guān)掉客戶端,再重新打開,那么你還會回到上次你操作的地方,而且數(shù)據(jù)也不會丟失,你可能會說,這就是一個Web吧,其實不是,因為客戶端是原生的,另外如果是Web,都是無狀態(tài)的,但是Smobiler的界面是有狀態(tài)的。所以它不是一個Web。那么它是什么呢?
你可以這么理解,一個原生展現(xiàn)的客戶端 + 類似于WebForm+WinForm結(jié)合體的服務(wù)端。這樣來理解就簡單多了??蛻舳酥皇且粋€展現(xiàn)層,把客戶端上輸入或者操作通過socket與發(fā)送給服務(wù)端做處理,服務(wù)端把界面和業(yè)務(wù)邏輯通過socket發(fā)送給客戶端顯示。所以服務(wù)端緩存和客戶端的數(shù)據(jù)和狀態(tài),這也解釋了為什么關(guān)閉客戶端,還能回到上一次操作的地方。因為你的數(shù)據(jù)在服務(wù)端。另外也解釋了為什么修改業(yè)務(wù)和界面,只需要修改服務(wù)端即可。總結(jié)來說:SmobilerDesigner通過實現(xiàn).NET的component組件方式,借助Visual Studio集成開發(fā)環(huán)境來開發(fā)移動應(yīng)用。SmobilerClient是通用的框架客戶端,使用自有的stml協(xié)議實現(xiàn)客戶端的原生控件渲染和事件。
這種方式可能有人說好,有人說不好,不過考慮開發(fā)速度,開發(fā)成本,開發(fā)門檻(比如一個只會c#的簡單開發(fā)的人,可以很快開發(fā)出一個應(yīng)用出來,不用去學(xué)習(xí)Android或者IOS的復(fù)雜的知道,甚至也不用學(xué)習(xí)webapi這種接口,這就產(chǎn)生了價值)。所以Smobiler也提供了一些開源的產(chǎn)品,比如SmoONE是面向OA的,SmoSEC是面向設(shè)備管理的,SmoWMS是面向倉庫管理的,這些開源的項目可以拿來修修改改就可以上手了,進(jìn)一步降低使用門檻。