本人之前沒用過android studio,因為有打包到安卓端的需求,所以有了這篇文章。下面一些內容不正常工作,也不報錯,是很煩的,根本不知道是哪里出了問題。比如對應的aar包沒有引入。或者沒有注冊信息。
在實現過程中我遇到一些問題記錄一下
- 從android studio構建時,靜態資源無法訪問
- canvas沒有正常工作
- uni.chooseImage無法正常工作,或者說是內部用到了uni.showActionSheet的都無法正常工作
- firstui中用到的fui-input顯示異常,從as構建的會出現文字上移裁剪,可能還有其他地方也有異常,反正我直接把所有的條件都搞得跟官網的示例一樣之后,就沒有了。就是把讓 gradle版本為8.4。gradle插件版本為8.2.2。kotlin插件版本為1.9.10。
- 里面很多配置的內容,我都直接讓ai處理了,我并不清楚。控制臺報錯就貼給ai。
靜態資源無法訪問
按照uniappx官方文檔的做法,是新建no activity的項目,然后在這個項目里面 new 一個android Library叫做uniappx。按照它這個做法,就會發現會有一個app主模塊,跟一個uniappx模塊,反正因為主模塊沒有activity之類的,要修改什么入口到uniappx里面的。我是讓ai改的,這樣操作后呢,進行構建時,會在app模塊下有一個build,uniappx下有一個build,因為app模塊下assets中沒有對應的靜態資源,所以就是訪問不到的,這時候如果你自己把靜態資源復制到app的build下面在構建運行就可以訪問了,(因為我已經把app模塊刪了,所以給不了圖。我記得是放在了 app/build/intermediates/assets/debug/mergeDebugAssets)這也太呆了。app主模塊就這么一點入口的用處,所以我直接把app刪了,我把uniappx模塊直接改成應用,具體改動我也不懂,ai改的。
可以看到下圖中uniappx的文件夾圖標已經變成application了。這樣在構建運行的時候,靜態資源就能正確訪問了,也不需要我做額外的操作。
canvas沒有正常工作
這個圖片中的底部欄當時考慮兼容性以及動畫效果,所以使用canvas實現的。一開始并沒有看到它正常工作,后面是在 uniappx的模塊配置中看到還得在引入兩個包。一開始沒注意,這居然是單開一小節的。
引入了那兩個包之后,還需要按照它說的在build.gradle中注冊組件。我這里把我用到的所有的需要注冊組件的都注冊了
uni.chooseImage無法正常工作
uni.chooseImage默認是可以相機跟相冊兩種方式都支持的,結果對我這里就是一開始就不支持的,然后切換到單個時,他們就是可以正常工作的。服了。原來是他嗎的uni-actionSheet的問題,uni.chooseImage里面如果支持多項,那么就會用到uni.showActionSheet來提供選項讓你選擇哪個。結果uni-actionSheet也是要單獨引入,也是他嗎的要注冊信息的。我淦。又卡了我不少時間。