爲何使用開源軟件? 開源軟件是Open Source音譯過來的。咱們知道全部的軟件都是由代碼編寫,經編譯生成的系統或者應用。而一旦你把它開源,意味着任何人、任何組織均可以使用你的代碼或者軟件,固然也能夠給你免費貢獻代碼,優化你的應用,開放源碼意味着自由選擇的權力,而自由選擇意味着激發更多創新的能量。Linux 就是最著名的開源操做系統,而 Java 與 Android 一樣也是開源的。html
目前微軟、Google、Facebook等公司都在Github上共享了不少開源代碼。軟件開發領域一直有個原則:DRY,Don’t repeat yourself,翻譯過來就是「不要重複造輪子」。而開源項目主要目的是共享,其實就是爲了讓你們不要重複造輪子,尤爲是在互聯網這樣一個快速發展的領域,速度就是生命,引入開源項目,能夠節省大量的人力和時間,大大加快業務的發展速度,何樂而不爲呢?git
有人問,開源軟件是隨即可用的嗎?答案顯然是否認的,必須準守開源許可協議,常見的開源許可協議有GPL、LGPL、BSD、Apache Licence vesion 2.0、MIT。這裏不過多闡述。安全
一般判斷一個開源項目是否值得拿過來用,會看如下幾點:Stars、做者影響力、README.md、最後更新時間、Issues、Fork等、開源協議。框架
我選擇了機智雲APP開源框架 https://git.oschina.net/dantang/GizOpenSource_AppKit_Android,作智能硬件APP。只須要關注UI和界面設計,無需關注業務邏輯。很方便。主要開發步驟以下: 1)APP開發準備工做 http://docs.gizwits.com/zh-cn/quickstart/%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C.html優化
2)瞭解安卓APP開源框架部署和控制頁面開發流程 http://docs.gizwits.com/zh-cn/quickstart/AndroidAppFrame.htmlui
3)安APP開源框架使用指南(含源碼) http://docs.gizwits.com/zh-cn/AppDev/Android%E5%BC%80%E6%BA%90%E6%A1%86%E6%9E%B6%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97.html#操作系統
4)在安卓APP上集成消息推送,如極光推送和百度推送 http://docs.gizwits.com/zh-cn/AppDev/Android%E6%B6%88%E6%81%AF%E6%8E%A8%E9%80%81.html.net
5)安卓APP集成第三方登陸與換膚指南 http://docs.gizwits.com/zh-cn/AppDev/Android%E7%AC%AC%E4%B8%89%E6%96%B9%E7%99%BB%E5%BD%95%E4%B8%8E%E6%8D%A2%E8%82%A4.html翻譯
6)APP與設備之間的數據透傳解析 http://docs.gizwits.com/zh-cn/AppDev/SDK%E6%95%B0%E6%8D%AE%E9%80%8F%E4%BC%A0%E6%96%B9%E6%B3%95%E8%A7%A3%E6%9E%90.html設計
7)FAQ:APP開源框架 App如何作根據productKey過濾設備列表 設備重置時App開發須要注意的問題 關於如何使用gizWifiSDK模塊提供的類 SDK獲取短信驗證碼時手機收到的短信內容 SDK獲取手機短信驗證碼的安全限制 SDK發佈版本變動預告 關於SDK提示外網不可達的說明 updateDeviceFromServer接口的使用 獲取綁定設備列表getBoundDevices接口無回調的緣由 APICloud gizWifiSDK模塊如何獲取wifi列表 sdk回調中不能作阻塞操做的重要性 透傳數據代碼示例 如何使用APICloud模塊透傳二進制數據 可否同時讓產品既能被京東雲也能被機智雲控制?