1. 程式人生 > >ionic開發遇到的坑及總結

ionic開發遇到的坑及總結

顯示 for 點擊 nod 類型 第三方 providers node 推出

前言

ionic是一個用來開發混合手機應用的,開源的,免費的代碼庫。可以優化html、css和js的性能,構建高效的應用程序,而且還可以用於構建Sass和AngularJS的優化。ionic會是一個可以信賴的框架。到目前為止,ionic已經推出了ionic3,已解決了這個行業的大部分痛點,性能也得到了大幅度提升,但是這個坑。。。。。。,相信用過的人都知道。。。。。。

androud-studio打開後一直在編譯

出現這種出現這種情況,關掉你的as ,找到你的路徑下:C:\Users\cxz\.gradle下面有個gradle文件夾,去網上找一個和這個版本對應gradle包,下載下來是一個zip,然後放到這個當前目錄(不用解壓),同時把原來的刪除,然後啟動as,打開後那個zip包會自動解壓

ionic無法初始化項目

科學上網(掛vpn、代理、改hosts文件)

通常卡住的地方都是在最好一步安裝node模塊的時候,執行到卡住的地方,強制結束命令,在cd切換進入項目目錄,執行npm install –save 或者 cnpm install –sav

註:建議最好少用cnpm ,最好通過npm的方式安裝,等的時間長點也無所謂,ionic用cnpm你會發現坑多的。。。。

ionic添加平臺失敗

通常情況下,添加失敗是環境沒配好,如果這裏提示gradle或者android的錯誤,那麽請把gradle包的路徑加入到系統環境變量中

ionic編譯不成功或者編譯成功生成失敗

打算如果沒問題,刪除你編譯的平臺,重新生成平臺,生成平臺時請執行: npm install platform add android@latese

ionic編譯不通過之gradle

技術分享圖片

檢查android環境,java環境,沒問題的情況下,在命令行輸入gradle -v ,看看有沒有反應,沒反應把gradle加入環境變量就可以了

ionic編譯不通過之編碼

項目路徑不能包含中文,路徑包含中文,會導致項目打包失敗

ionic真機調試失敗

檢查端口,可能有程序占用了adb.exe 的端口(通常情況下,一些第三方軟件會占用這個端口,如 360mobile 豌豆莢這類軟件)

把adb加入到系統變量

在cmd 裏輸入adb 看有沒有反應,如果報錯,則android環境沒配好

ionic插件無法安裝

安裝ionic插件的時候,很多插件無法安裝,可以從github上面下載zip文件,如果你熟悉git命令,你可以直接復制鏈接拉取文件,如果你不熟悉,可以點擊下載zip文件,下載到本地後本地安裝這個插件。

Ionic cordova plugin add 插件本地路徑

這個路徑最好是相對路徑,我不知道為什麽每次絕對路徑安裝都失敗

ionic androud App 卡頓

可以安裝crosswalk ,這個插件可以讓你的android App性能更好,對App系統的向下支持也有幫助

安裝命令:cordova plugin add cordova-plugin-crosswalk-webview

安裝後,編譯的文件會生成兩種,根據需要選擇對應的安裝類型

安裝crosswalk插件報錯Could not find any version that matches com.android.support:support-v4:[13.0.0,).

技術分享圖片

ionic打包後頁面布局混亂

我們一般開發在瀏覽器調試選的都是ios的設備,然後打安卓包,ionic的androud和ios的風格不一樣,所有你需要統一風格

技術分享圖片

另外一種情況就是,你布局不標準,比如在p標簽裏面嵌套div,在sapn裏面嵌套p,這種也會導致打包後布局混亂

ionic插件安裝後不生效

請刪除編譯的平臺,重新生成你需要的平臺(極光推送需要重新生成平臺)

Ionic執行ionic resources報錯

登錄ionic官網,註冊一個賬號,登錄進去

技術分享圖片

技術分享圖片

技術分享圖片

在你的項目下執行這個命令,和官網的項目關聯,然後在執行ionic resources

ionic啟動慢的問題

請參考這篇文章:http://www.jianshu.com/p/102bd23625cb

ionic帶有背景圖片的頁面往上頂

頁面背景沒有圖片頂上去也看不出來,如果有圖片,背景設置成,background-size:cover;

ionic彈出鍵盤把tabs頂上去

可以監聽鍵盤事件打開還是關閉,然後隱藏tabs

技術分享圖片

can not find module xxxxxxx

沒下載xxxxxx模塊,請執行npm install xxxxxxx

No providers in xxxxxxx

沒添加服務,請把服務添加到app-module裏面的providers裏面

在某些元素上無法添加點擊事件或者點擊延遲

在該點擊元素上 添加 tappable

技術分享圖片

Ionic圖片資源加載不到

路徑統一寫成 assets/xxxx/xxxxx/xxx, 這樣在瀏覽器或者在app裏面都能加載

在子頁面點擊跳轉到另外的子頁面(不點擊tab的情況下)

技術分享圖片

從0開始,這裏是調到第二個頁面

Ionic引入第三方js庫(以jq為例)

技術分享圖片

在index.html裏面引入jq

技術分享圖片

在聲明這個$對象就可以使用jq了

ionic註冊地圖服務秘鑰,輸入正式版android簽名SHA1碼後始終顯示不正確

例:keytool -genkey -v -keystore test-release.keystore -alias test-release -keyalg RSA -validity 10000

生成的正式版的簽名的名字要一定要帶上-release,否則正式版簽名的SHA1值,百度地圖和高德地圖無法識別,會報錯,這個坑我躺了好久。。。。

ionic開發遇到的坑及總結