導師的課題是移動端室內尋徑,因此從11月到12月我基本都在學習安卓,跟着SuperMap iMobile9D for Android練習做出一個展示地圖的APP,記錄一下,算是初步進入安卓開發的坑。
不得不感慨,Android Studio真是個磨人的小妖精,裝程序配置環境的時間花了非常久,包括java安裝、配置,AS安裝和配置。最開始裝的是AS官網上的最新版本3.5.2,然后就去寫了SuperMap iMobile9D for Android里面的實例程序,發現不能運行,最后知道了原來Android6.0以后已經需要申請運行時權限了。所以去網上學習了申請運行時權限,發現還是不能運行。
請教了好幾個師兄,發現權限的確申請到了,但是已進入主程序就不能運行,出現了申請完程序閃退的情況。我自己對自己寫程序的能力非常不確定,反復確認自己寫的程序,還把師兄寫的能運行安裝的程序反復看,的確邏輯是沒錯的。也嘗試好多種申請運行時權限的方法,但是安卓3.5.2就是運行不了,有好多天心情都非常低落,但是我是那種聽個音樂,看個電影,和父母打個電話,心情就會好轉,繼續堅持下去改代碼。發現我的基礎真是太弱了,本科該走的改代碼之路還是逃不了,安慰自己出來混總是要還的,下定決心這次調好之后一定要好好補補基礎。寫代碼是非常主觀的事情,我的代碼由於基礎差,基本沒有邏輯,有個師兄看了一個小時我的代碼,也沒太明白我寫的東西。我不能按照他說的想,他也看不明白我的想法,所以很多時候寫代碼非常孤獨,一個小bug自己就是看不出來,別人也很難知道你在寫什么。
我是一直用真機模擬程序的。最后沒辦法只能卸掉了3.5.2(android plugin版本5.4.1,SDK版本29),刪掉了所有相關文件,重新裝了3.2.1(師兄的版本是3.2.0),android plugin版本是4.6,SDK版本也降到了28.0.3,這次運行了師兄的代碼,是可以運行了,仿佛看到了一點希望。(這期間AS下載n多次SDK,強行調整SDK為28,因為我的手機顯示為28,不知道是不是這個原因,按道理來說29肯定會兼容28的呀?)又重新寫了n次demo,還是不行,AS最考驗人的還有一點,運行太卡頓,每次動一下都要等上一萬年。心里又有點向卸掉重裝了,枯了。無意間想到AS必須配置java和sdk環境,帶着沉重的心情配置完java和sdk,重寫程序。這次終於可以運行,解決這個申請完權限閃退的情況花了我一個星期(我也太弱了o(╥﹏╥)o),貼張圖紀念一下。每個電腦的情況不一樣,我遇到的情況可能別人並不知道為什么會這樣,一定要好好武裝自己啊!
這是一個非常簡單的demo。回首我的安卓入坑之路,發現我的痛苦主要來自於AS。在筆記本上運行極其勉強,弄得我想是要裝硬盤還是換電腦o(╥﹏╥)o。