




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
【移動(dòng)應(yīng)用開(kāi)發(fā)技術(shù)】android項(xiàng)目從Eclipse遷移到Androidstudio中常見(jiàn)問(wèn)題解決方法
(1)將Eclipse項(xiàng)目導(dǎo)入到Androidstudio中出現(xiàn)9-patchimage問(wèn)題解決方法:在build.gradle里添加以下兩句:用來(lái)關(guān)閉AndroidStudio的PNG合法性檢查的,直接不讓它檢查。(2)AndroidStudio錯(cuò)誤:非法字符:‘\ufeff'解決方案|錯(cuò)誤:需要class,interface或enum原因:
Eclipse可以智能的把UTF-8+BOM文件轉(zhuǎn)為普通的UTF-8文件,AndroidStudio還沒(méi)有這個(gè)功能,所以使用AndroidStudio編譯UTF-8+BOM編碼的文件時(shí)會(huì)出現(xiàn)”非法字符:‘\ufeff'“之類的錯(cuò)誤
解決方法:
手動(dòng)將UTF-8+BOM編碼的文件轉(zhuǎn)為普通的UTF-8文件用EdItPlus打開(kāi).java文件依次:文檔》文本編輯》轉(zhuǎn)換文本編碼》選擇UTF-8編碼即可
(3)將項(xiàng)目導(dǎo)入到AS中出現(xiàn)以下問(wèn)題:解決方法:
在build.grade中添加以下代碼:(4)未知錯(cuò)誤以上是錯(cuò)誤提示。
解決方案
解決的思路很簡(jiǎn)單只需要把perties.lock文件刪除了就可以了。當(dāng)時(shí)我們刪除的時(shí)候會(huì)被占用這時(shí)候需要進(jìn)入任務(wù)管理器結(jié)束關(guān)于java的進(jìn)程就行比如java的jdk刪除后重啟讓javajdk啟動(dòng)啟動(dòng)AndroidStudio就能啟動(dòng)APK了。
(5)修改了Android項(xiàng)目的最小SDK版本之后出現(xiàn)很多stysle文件找不到解決方案compileSdkVersion是多少版本的那么compile‘com.android.support:appcompat-v7:23.2.1'就是啥版本的。(6)Androidstudio編譯問(wèn)題:finishedwithnon-zeroexitvalue2問(wèn)題:解決方案
這個(gè)錯(cuò)誤在app的build.gradle里面添加下面這句就好了。(7)Androidstudio編譯問(wèn)題:finishedwithnon-zeroexitvalue1(由于導(dǎo)入的依賴出現(xiàn)重復(fù)造成的)問(wèn)題:解決方案
這個(gè)是因?yàn)橐蕾嚢貜?fù)了(像v4和nineoldandroids),app中實(shí)現(xiàn)了對(duì)easeUI的依賴,但是app和easeUI都添加了對(duì)這個(gè)包的依賴。所以就報(bào)這個(gè)錯(cuò)誤,修改之后再報(bào),就clean,rebuild一下。(8)問(wèn)題解決方案
這個(gè)是在我們啟動(dòng)的時(shí)候報(bào)錯(cuò)的,而不是在編譯的時(shí)候,原因是這樣的,報(bào)這個(gè)錯(cuò)是因?yàn)橛?個(gè)庫(kù)中存在相同的類。大家可以看到stackoverflow上有人也提了這樣的問(wèn)題。只需要?jiǎng)h除其中的一個(gè)就可以解決了。
(9)添加第三方依賴出現(xiàn)的問(wèn)題錯(cuò)誤原因
出現(xiàn)這個(gè)錯(cuò)誤的原因是我引入的第三方庫(kù)最低支持版本高于我的項(xiàng)目的最低支持版本,異常中的信息顯示:我的項(xiàng)目的最低支持版本為14,而第三方庫(kù)的最低支持版本為19,所以拋出了這個(gè)異常。
解決方案
在AndroidManifest.xml文件中標(biāo)簽中添加其中的xxx.xxx.xxx為第三方庫(kù)包名,如果存在多個(gè)庫(kù)有此異常,則用逗號(hào)分割它們,例如:這樣做是為了項(xiàng)目中的AndroidManifest.xml和第三方庫(kù)的AndroidManifest.xml合并時(shí)可以忽略最低版本限制。(10)Androidstudio編譯問(wèn)題:finishedwithnon-zeroexitvalue1(由于buildtools版本太高造成的)錯(cuò)誤錯(cuò)誤原因
buildToolsVersion版本太高,我原來(lái)的buildToolsVersion“24.0.0”需要jdk1.8,而我的是jdk1.7,所以一直報(bào)這個(gè)錯(cuò),剛開(kāi)始以為是v4包和V7包沖突,因?yàn)橹坝龅竭@樣的問(wèn)題,而這次刪除V4包之后依然報(bào)這個(gè)錯(cuò),把buildTools版本降下來(lái)就好了。解決方案(11)Androidstudio編譯問(wèn)題:GradleDSLnotfound‘a(chǎn)ndroid()'問(wèn)題
clipboard.png解決方案
配置build.gradle:配置app/build.gradle:最后再同步一下sync即可。(13)Glide使用問(wèn)題:使用Glide加載圓角圖片,第一次顯示占位圖問(wèn)題描述
最近在項(xiàng)目中使用Glide加載圓形圖片,并且設(shè)置placehloder和error兩個(gè)占位圖,運(yùn)行發(fā)現(xiàn),第一次加載圖片只顯示占位圖,需要第二次進(jìn)入的時(shí)候才會(huì)正常顯示。
如果你剛好使用了這個(gè)圓形Imageview庫(kù)或者其他的一些自定義的圓形Imageview,而你又剛好設(shè)置了占位的話,那么,你就會(huì)遇到第一個(gè)問(wèn)題。如何解決呢?
方案一
不設(shè)置占位圖推薦方案二
使用Glide的TransformationAPI自定義圓形Bitmap的轉(zhuǎn)換使用方法:方案三重寫(xiě)Glide的圖片加載監(jiān)聽(tīng)方法,具體如下:注意事項(xiàng):該方法在listview上復(fù)用有問(wèn)題的bug,如果在listview中加載CircleImageView,請(qǐng)不要使用該方法。方案四:不使用Glide的默認(rèn)動(dòng)畫(huà):(14)json數(shù)據(jù)解析問(wèn)題:json串頭部出現(xiàn)字符:”\ufeff”解決方法異常信息解析服務(wù)器返回的json格式數(shù)據(jù)時(shí),我們可能會(huì)發(fā)現(xiàn),數(shù)據(jù)格式上是沒(méi)有問(wèn)題的,但是仔細(xì)對(duì)比會(huì)發(fā)現(xiàn),在json串頭部發(fā)現(xiàn)字符:”\ufeff”客戶端解決方案:服務(wù)器端解決方案:將輸出此json的php源碼重新用editplus之類用utf-8無(wú)BOM的編碼保存。不要用windows系統(tǒng)自帶的記事本編輯php源碼,這個(gè)BOM就是記事本這些windows自帶的編輯器引入的。(15)Androidstudio編譯問(wèn)題:notfoundndk()問(wèn)題解決方案出現(xiàn)該問(wèn)題,可能是由于ndk配置在build.gradle配置文件中位置弄錯(cuò)導(dǎo)致的(16)Androidstudio導(dǎo)入其他的項(xiàng)目:UnsupportedMethodException問(wèn)題解決方案將根目錄中的build.gradle文件中的gradle版本號(hào),出現(xiàn)錯(cuò)誤之前,我的是1.3.0,修改成2.2.0之后重新編譯一下就可以運(yùn)行了。將這個(gè)版本號(hào)改成你其他項(xiàng)目能夠運(yùn)行成功的版本號(hào)即可(17)Androidstudio更新到2.1.1之后使用CollapsingToolbarLayout出現(xiàn)ErrorinflatingclassCollapsingToolbarLayout之前在項(xiàng)目中使用了CollapsingToolbarLayout,效果還是可以的,但是Androidstuido更新到2.1.1版本之后出現(xiàn)ErrorinflatingclassCollapsingToolbarLayout異常崩潰異常信息如下所示:解決方案在項(xiàng)目的build.gradle文件中添加下面一行,同步一下即可(18)Androidstudiogradle編譯異常很顯然是class版本不支持。經(jīng)查詢,AndroidStudio2.2必須使用JDK8及以上版本,而且是強(qiáng)制的。所以呢,趕緊下了個(gè)JDK8最新版的。安裝完畢,把JAVA_HOME指向了JDK8,實(shí)測(cè)JDK7和8是可以共存的。那么,重啟AndroidStudio后問(wèn)題解決,BuildSuccessful!(19)recycleview嵌套列表項(xiàng)顯示不全問(wèn)題解決方案:第一個(gè)RecyclerView的Adapter(即父RecyclerView):第二個(gè)RecyclerView的Adapter(即子RecyclerView):(20)Android手機(jī)真機(jī)調(diào)試,日志不打印的解決方案:1、在撥號(hào)界面輸入:*#*#2846579#*#*進(jìn)入測(cè)試菜單界面。
2、ProjectMenu–后臺(tái)設(shè)置–LOG設(shè)置
3、LOG開(kāi)關(guān)–LOG打開(kāi)LOG級(jí)別設(shè)置–VERBOSE
4、Dump&Log–全部選中
5、重啟手機(jī)
(21)java.lang.IndexOutOfBoundsExceptionInconsistencydetected.Invaliditemposition2(offset:2).state:4解決方案:Recyclerview在下拉刷新時(shí),如果在數(shù)據(jù)沒(méi)更新到之前將listclear之后,迅速滑動(dòng)會(huì)造成crash,所以一般在下拉刷新之前,等數(shù)據(jù)刷新回來(lái)再把之前的數(shù)據(jù)進(jìn)行清除。(22)使用友盟分享——微信、朋友圈分享出現(xiàn)java.lang.NoClassDefFoundError:org.apache.http.entity.mime.MultipartEntity解決方案:造成這樣的原因是因?yàn)槿鄙賖ttpmime_jar,添加是httpmime_jar包之后即可正常分享(23)Fragment中調(diào)用getActivity()出現(xiàn)空指針異常解決方案:
對(duì)于上面的問(wèn)題,可以考慮下面這兩種解決辦法:
1、不保存fragment的狀態(tài):在MyActivity中重寫(xiě)onSaveInstanceState方法,將super.onSaveInstanceState(outState);注釋掉,讓其不再保存Fragment的狀態(tài),達(dá)到fragment隨MyActivity一起銷毀的目的。
2、重建時(shí)清除已經(jīng)保存的fragment的狀態(tài):在恢復(fù)Fragment之前把Bundle里面的fragment狀態(tài)數(shù)據(jù)給清除。方法如下:
(24)RecyclerView嵌套使用切換頁(yè)面出現(xiàn)自動(dòng)滾動(dòng)問(wèn)題原因:造成這樣的原因是由于子RecyclerView搶占焦點(diǎn)導(dǎo)致的,如果你去查看RecyclerView的源碼會(huì)發(fā)現(xiàn),它會(huì)在構(gòu)造方法中調(diào)用setFocusableInTouchMode(true),所以,設(shè)為false可以解決這個(gè)問(wèn)題。解決方案在子RecyclerView中調(diào)用如下方法(25)Android7.0設(shè)備拍照閃退問(wèn)題原因:Android7.0做了一些系統(tǒng)權(quán)限更改,為了提高私有文件的安全性,面向Android7.0或更高版本的應(yīng)用私有目錄被限制訪問(wèn),此設(shè)置可防止私有文件的元數(shù)據(jù)泄漏,如它們的大小或存在性。而此權(quán)限更改有多重副作用,其中之一就是當(dāng)傳遞軟件包網(wǎng)域外的file://URI可能給接收器留下無(wú)法訪問(wèn)的路徑。因此,嘗試傳遞file://URI會(huì)觸發(fā)FileUriExposedException。分享私有文件內(nèi)容的推薦方法是使用FileProvider。在應(yīng)用間共享文件對(duì)于面向Android7.0的應(yīng)用,Android框架執(zhí)行的StrictModeAPI政策禁止在您的應(yīng)用外部公開(kāi)file://URI。如果一項(xiàng)包含文件URI的intent離開(kāi)您的應(yīng)用,則應(yīng)用出現(xiàn)故障,并出現(xiàn)FileUriExposedException異常。要在應(yīng)用間共享文件,應(yīng)發(fā)送一項(xiàng)content://URI,并授予URI臨時(shí)訪問(wèn)權(quán)限。進(jìn)行此授權(quán)的最簡(jiǎn)單方式是使用FileProvider類。點(diǎn)擊查看Android官方說(shuō)明解決方案1.在清單文件添加如下代碼android:authorities="com.alex.demo.FileProvider"自定義的權(quán)限
android:exported="false"是否設(shè)置為獨(dú)立進(jìn)程
android:grantUriPermissions="true"是否擁有共享文件的臨時(shí)權(quán)限
android:resource="@xml/external_storage_root"共享文件的文件根目錄,名字可以自定義
2.在xml文件夾目錄下新建provider_paths文件,名字自定義,添加如下代碼3.調(diào)用系統(tǒng)相機(jī)處代碼處理
(26)ProcessException:Returncode1fordexprocess問(wèn)題實(shí)際原因還是Appsover64kmethod,解決方案:https://developer.A/intl/zh-cn/tools/building/multidex.html方案1:使用插件化框架比如:/singwhatiwanna/dynamic-load-apk方案2:分割Dex主要說(shuō)說(shuō)Dex分割1、開(kāi)發(fā)環(huán)境是eclipse時(shí)的解決方案:在perties中添加一行dex.disable.merger=true2、AndroidStudio在app的build.gradle中(1)在depen
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 銷售房屋合同范本
- 模板工程付款合同范本
- 2025年新入職護(hù)士理論考試指導(dǎo)題庫(kù)500題(含答案)
- 2025年水利三類人員C證理論考試指導(dǎo)題庫(kù)-下(多選、判斷題)
- 臨時(shí)柴油運(yùn)輸合同范本
- 汽車用油加盟合同范本
- 卡車汽車租賃合同范本
- 景觀小品轉(zhuǎn)讓合同范本
- 幼兒園大班安全詳細(xì)教案
- 醫(yī)學(xué)影像技術(shù)在整形美容中的應(yīng)用
- GB/T 3274-2017碳素結(jié)構(gòu)鋼和低合金結(jié)構(gòu)鋼熱軋鋼板和鋼帶
- GB/T 18318-2001紡織品織物彎曲長(zhǎng)度的測(cè)定
- 《企業(yè)員工培訓(xùn)國(guó)內(nèi)外文獻(xiàn)綜述》4800字
- 麻醉藥品與精神藥品不良反應(yīng)的防治 (1) - 副本課件
- 車輛保險(xiǎn)登記臺(tái)賬參考模板范本
- 礦山道路施工組織設(shè)計(jì)方案
- 正弦函數(shù)的圖像與性質(zhì)優(yōu)秀課件
- 山東省任氏宗親分布村落
- 北師大版小學(xué)數(shù)學(xué)五年級(jí)下冊(cè)《有趣的折疊》說(shuō)課稿
- 陜西省建設(shè)工程長(zhǎng)安杯獎(jiǎng)省優(yōu)質(zhì)工程結(jié)構(gòu)備案和復(fù)查的要求
- 典型示功圖分析(全)
評(píng)論
0/150
提交評(píng)論