(該路徑會(huì)有變化,可以關(guān)注Flutter社區(qū),隨時(shí)更新)
創(chuàng)新互聯(lián)公司憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專業(yè)的網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、網(wǎng)站優(yōu)化、軟件開發(fā)、網(wǎng)站改版等服務(wù),在成都10余年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都近1000家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
Documents為目錄,fluttersdk為sdk文件夾
cd 到對(duì)應(yīng)的項(xiàng)目工程中執(zhí)行命令:
在終端中執(zhí)行 flutter doctor 查看Android和iOS的開發(fā)環(huán)境,監(jiān)測(cè)到依賴若有缺失,會(huì)給出缺失的依賴的安裝結(jié)果,依照提示進(jìn)行安裝即可。
在命令終端執(zhí)行相關(guān)命令:
打開Android Studio應(yīng)用,打開菜單項(xiàng)Preferences Plugins中搜索Flutter插件并點(diǎn)擊install進(jìn)行安裝
打開 VS Code,可點(diǎn)擊 View - Command Palette,搜索flutter并點(diǎn)擊install進(jìn)行安裝
IDEA寫android服務(wù)端,使用IDEA運(yùn)行Android平臺(tái)Flutter工程。
Android App作為客戶端與idea后臺(tái)服務(wù)器通信,操作數(shù)據(jù)庫(kù)進(jìn)行查詢,驗(yàn)證,添加數(shù)據(jù)。具體實(shí)例,登錄,注冊(cè),查詢用戶,權(quán)限分級(jí),提交訂單。
小程序有兩個(gè)頁(yè)面(index,ding),在第一個(gè)頁(yè)面實(shí)現(xiàn)用戶的查詢,登錄,注冊(cè)功能,登錄成功后跳轉(zhuǎn)到訂單頁(yè)面。
趨勢(shì)一:更加移動(dòng)優(yōu)先
響應(yīng)式設(shè)計(jì)顯然是目前Web前端開發(fā)領(lǐng)域的主要趨勢(shì)之一,并且這一趨勢(shì)在未來還將持續(xù)一段時(shí)間。雖然現(xiàn)在的響應(yīng)式設(shè)計(jì)大部分還是以PC版優(yōu)先,然而如果有一天我們把PC版放到比移動(dòng)版次要的位置上,也沒有什么好奇怪的。因?yàn)椋壳霸S多Web前端開發(fā)者已經(jīng)開始轉(zhuǎn)向以移動(dòng)優(yōu)先方案來做他們的響應(yīng)式設(shè)計(jì)和開發(fā),這就象征著一個(gè)重大轉(zhuǎn)變,值得我們跟進(jìn)的。
趨勢(shì)二:更多使用快速原型開發(fā)工具
眾多Web前端開發(fā)者從2016年開始嘗試使用快速原型開發(fā)工具,而在2018年將是這種技術(shù)真正爆發(fā)的一年。“UXpin、Webflow、Invision以及其它許多快速原型開發(fā)工具,讓設(shè)計(jì)師不用寫一行代碼,就能為網(wǎng)站和服務(wù)快速創(chuàng)建低保真和高保真原型,便于設(shè)計(jì)師衡量它們的可用性和美觀性。” Web設(shè)計(jì)師Jamie Leeson says如是說,“許多工具也允許你在瀏覽器中設(shè)計(jì)原型并從工具里真正啟動(dòng)網(wǎng)站自身?!?/p>
不管未來前端發(fā)展方向如何,可以肯定的是未來前端人才需求依舊很大。想學(xué)前端開發(fā)專業(yè)的機(jī)構(gòu)也很多,你可以去線下試聽課程了解一下,例如北大青鳥、南京中博軟件學(xué)院、南京課工場(chǎng)等等都有試聽課程的!
OpenIM文檔方面的建設(shè)一直遠(yuǎn)遠(yuǎn)落后于開發(fā), 也經(jīng)常被開發(fā)者詬病,在接下來一周的時(shí)間里,我們重點(diǎn)補(bǔ)齊文檔,讓開發(fā)者更輕松接入。由于app sdk底層都是go來實(shí)現(xiàn),所以本文先寫一個(gè)模板和框架,在接下來的時(shí)間里,會(huì)有iOS、Android、Flutter、Uniapp、jssdk同事補(bǔ)充具體的細(xì)節(jié),并更新到官網(wǎng)
![0](C:\Users\Administrator\Desktop\OpenIM\官網(wǎng)相關(guān)\技術(shù)文章\6-25\0.png)
## 初始化及登錄
初始化并登錄成功回調(diào),是正常使用OpenIM 服務(wù)的前提
| SDK? ? ? ? ? ? ? | 描述? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| :--------------- | :----------------------------------------------------------- |
| [Login]? ? ? ? ? | 登錄,如果登錄成功,必須退出登錄才能再次執(zhí)行登錄操作? ? ? ? |
| [Logout]? ? ? ? | 退出登錄? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [GetLoginStatus] | 獲取登錄狀態(tài), 101:登錄成功,? 102:登陸中,? 103:登錄失敗,? 201:退出登錄 |
| [GetLoginUser]? | 獲取當(dāng)前登錄用戶UserID,此時(shí)用戶登錄狀態(tài)未知? ? ? ? ? ? ? ? |
| [initSDK]? ? ? ? | 初始化 SDK,整個(gè)生命周期執(zhí)行一次,登錄相關(guān)監(jiān)聽介紹如下:? ? |
OpenIM和調(diào)用方利用監(jiān)聽回調(diào)機(jī)制,和調(diào)用方信息互通,把登錄狀態(tài)通過異步回調(diào)方式即時(shí)傳遞給調(diào)用方,確保信息及時(shí)傳達(dá)而不阻塞其主線程。
## 監(jiān)聽說明
| 登錄相關(guān)監(jiān)聽? ? ? ? | 回調(diào)描述? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| :------------------- | :----------------------------------------------------------- |
| [OnConnecting]? ? ? | 連接中,在連接后臺(tái)時(shí)(包括重連)回調(diào)? ? ? ? ? ? ? ? ? ? ? ? |
| [OnConnectSuccess]? | 連接成功? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [OnConnectFailed]? ? | 連接失敗,如果因網(wǎng)絡(luò)連接失敗會(huì)重連,其他情況不重連? ? ? ? ? |
| [OnKickedOffline]? ? | 被踢下線,可能由于多端登錄策略所致,或后臺(tái)管理員強(qiáng)制其退出登錄 |
| [OnUserTokenExpired] | 檢測(cè)token過期回調(diào)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
## 調(diào)用流程
OpenIM調(diào)用流程分為如下幾步:
(1)初始化:在整個(gè)生命周期執(zhí)行一次
(2)設(shè)置監(jiān)聽:包括群組監(jiān)聽,好友監(jiān)聽,用戶監(jiān)聽,消息及會(huì)話監(jiān)聽,這些監(jiān)聽會(huì)在其他章節(jié)中描述
(3)登錄:登錄回調(diào)成功后再執(zhí)行其他操作,否則可能出現(xiàn)資源加載未完成的錯(cuò)誤
(4)收發(fā)消息等操作;
## 好友管理相關(guān)接口
OpenIM提供好友關(guān)系托管,比如好友申請(qǐng),同意,以及好友獲取等,OpenIM在客戶端本地存儲(chǔ)好友關(guān)系,并結(jié)合消息通知機(jī)制,按需調(diào)用后臺(tái)接口,確保本地和服務(wù)端數(shù)據(jù)一致。同時(shí)利用監(jiān)聽機(jī)制,把數(shù)據(jù)變化通過異步回調(diào)傳達(dá)調(diào)用方。OpenIM在收發(fā)消息時(shí),默認(rèn)不檢查好友關(guān)系,您可以在配置文件中自行修改。OpenIM好友關(guān)系是雙向關(guān)系,A添加B為好友后,則A在B的好友列表中,B也在A的好友列表中,A刪除B,僅僅只是刪除A的好友列表,而B的好友列表不受影響。同樣,黑名單也類似。
| SDK? ? ? ? ? ? ? ? ? ? ? ? ? ? | 描述? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| :----------------------------- | :------------------------------------------------------- |
| [GetDesignatedFriendsInfo]? ? | 獲取指定好友的信息? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [GetFriendList]? ? ? ? ? ? ? ? | 獲取所有的好友列表? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [SearchFriends]? ? ? ? ? ? ? ? | 通過關(guān)鍵詞搜索好友? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [CheckFriend]? ? ? ? ? ? ? ? ? | 檢查是否好友關(guān)系? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [AddFriend]? ? ? ? ? ? ? ? ? ? | 發(fā)起添加好友請(qǐng)求? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [SetFriendRemark]? ? ? ? ? ? ? | 設(shè)置好友備注? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [DeleteFriend]? ? ? ? ? ? ? ? | 刪除好友(單向刪除)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [GetRecvFriendApplicationList] | 獲取我收到的添加好友申請(qǐng)列表? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [GetSendFriendApplicationList] | 獲取我發(fā)起的的添加好友申請(qǐng)列表? ? ? ? ? ? ? ? ? ? ? ? ? |
| [AcceptFriendApplication]? ? ? | 同意好友申請(qǐng)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [RefuseFriendApplication]? ? ? | 拒絕好友申請(qǐng)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| [SetFriendListener]? ? ? ? ? ? | 設(shè)置好友、黑名單相關(guān)監(jiān)聽,用于UI層實(shí)時(shí)感知數(shù)據(jù)變化并刷新 |
## 監(jiān)聽說明
好友監(jiān)聽器的作用:調(diào)用方設(shè)置好友監(jiān)聽,好友關(guān)系的變化會(huì)通過OpenIM消息機(jī)制實(shí)時(shí)同步到需要感知的在線用戶,包括用戶的其他端,調(diào)用方根據(jù)回調(diào)事件做相關(guān)的數(shù)據(jù)處理。
比如用戶B在Android端添加用戶A為好友,用戶A(所有在線的終端)收到B的好友申請(qǐng),則A調(diào)用GetRecvFriendApplicationList獲取收到的好友申請(qǐng)列表,刷新界面。同時(shí),用戶B在線其他的終端比如PC端也會(huì)收到通知,B調(diào)用GetSendFriendApplicationList獲取發(fā)起的好友申請(qǐng)列表,刷新B發(fā)出的好友申請(qǐng)列表。
當(dāng)然也可以利用回調(diào)的參數(shù)信息,做增量處理,而不用獲取全量的好友申請(qǐng)列表。
以用戶B申請(qǐng)?zhí)砑佑脩鬉為例
| 好友及黑名單監(jiān)聽? ? ? ? ? ? ? | 描述? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| :---------------------------- | :--------------------------------------------------- |
| [OnFriendApplicationAdded]? ? | 好友申請(qǐng)列表增加,主動(dòng)發(fā)起者和被動(dòng)添加者會(huì)收到? ? ? |
| [OnFriendApplicationDeleted]? | 好友申請(qǐng)列表刪除,主動(dòng)刪除者會(huì)收到? ? ? ? ? ? ? ? ? |
| [OnFriendApplicationAccepted] | 好友申請(qǐng)被同意,主動(dòng)發(fā)起者和被動(dòng)添加者會(huì)收到? ? ? ? |
| [OnFriendApplicationRejected] | 好友申請(qǐng)被拒絕,主動(dòng)發(fā)起者和被動(dòng)添加者會(huì)收到? ? ? ? |
| [OnFriendAdded]? ? ? ? ? ? ? | 好友增加,用戶好友增加時(shí)會(huì)收到? ? ? ? ? ? ? ? ? ? ? |
| [OnFriendDeleted]? ? ? ? ? ? | 好友刪除,用戶好友減少時(shí)會(huì)收到? ? ? ? ? ? ? ? ? ? ? |
| [OnFriendInfoChanged]? ? ? ? | 好友信息改變,用戶好友信息(比如昵稱等)改變時(shí)會(huì)收到 |
| [OnBlackAdded]? ? ? ? ? ? ? ? | 黑名單增加,用戶黑名單增加時(shí)會(huì)收到? ? ? ? ? ? ? ? ? |
| [OnBlackDeleted]? ? ? ? ? ? ? | 黑名單移除,用戶黑名單減少時(shí)會(huì)收到? ? ? ? ? ? ? ? ? |
## 項(xiàng)目介紹
OpenIM繼續(xù)領(lǐng)跑開源IM領(lǐng)域,在廣大開發(fā)者的支持下,目前github star突破9k。在數(shù)據(jù)泄露、信息外泄、隱私濫用的時(shí)代,IM私有化部署需求旺盛。其中,政企協(xié)同辦公對(duì)IM需求猛增,隨著信息化技術(shù)的迭代升級(jí)以及信創(chuàng)產(chǎn)業(yè)加速落地和實(shí)踐,協(xié)同辦公軟件的發(fā)展?jié)摿⑦M(jìn)一步被釋放?!鞍踩煽亍爸鸩匠蔀榈谝灰?。對(duì)于社區(qū)交友領(lǐng)域,暴露出的隱私安全問題越來越多,私有化部署確保用戶數(shù)據(jù)不泄露。
OpenIM從服務(wù)端到客戶端SDK開源即時(shí)通訊(IM)整體解決方案,可以輕松替代第三方IM云服務(wù),打造具備聊天、社交、辦公功能的app。
github地址:
開發(fā)者中心:
## OpenIM團(tuán)隊(duì)
創(chuàng)始團(tuán)隊(duì)來自資深I(lǐng)M技術(shù)團(tuán)隊(duì),我們致力于用開源技術(shù)創(chuàng)造服務(wù)價(jià)值,打造輕量級(jí)、高可用的IM架構(gòu),開發(fā)者只需簡(jiǎn)單調(diào)用 SDK,即可在應(yīng)用內(nèi)構(gòu)建多種即時(shí)通訊及實(shí)時(shí)音視頻互動(dòng)場(chǎng)景。OpenIM優(yōu)勢(shì):開源,安全,可靠,低成本。對(duì)于信息安全重視的電子政務(wù),企業(yè)協(xié)同辦公,OpenIM都是非常好的選擇。
從公司成立之初就將“開源”作為核心戰(zhàn)略來推進(jìn),開源充分體現(xiàn)了自由、平等、分享的互聯(lián)網(wǎng)精神。
OpenIM邀請(qǐng)全球技術(shù)極客參與技術(shù)優(yōu)化,讓開發(fā)者輕松集成,讓每一個(gè)應(yīng)用都具備IM功能,同時(shí)考慮企業(yè)的接入成本、服務(wù)器資源以及最重要的數(shù)據(jù)安全性和私密性。
本文題目:flutter社區(qū),flutter 社區(qū)
文章地址:http://www.rwnh.cn/article22/dscdojc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、、用戶體驗(yàn)、軟件開發(fā)、標(biāo)簽優(yōu)化、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)