在將項目導(dǎo)入到Studio時提示 毛?。悍欠ㄗ址? 'ufeff',編譯器沒報錯但編譯出錯,比較頭疼,后來發(fā)現(xiàn)緣由是由于沒有采取UTF⑻無BOM模式,用 Notepad++ 或其他編輯器將文件打開,更換下格式就能夠解決:
注:Eclipse可以智能的把有BOM文件轉(zhuǎn)為無BOM文件,目前Andorid Studio未做處理。下面也簡單的說下甚么是BOM(Byte-Order Mark),可以理解為字節(jié)順序標(biāo)記,是位于碼點(diǎn)U+FEFF的統(tǒng)1碼字符的名稱。當(dāng)以 UTF⑴6 或 UTF⑶2 來將UCS/統(tǒng)1碼字符所組成的字串編碼時,這個字符被用來標(biāo)示其字節(jié)序。常被用來當(dāng)作標(biāo)示文件是以UTF⑻、UTF⑴6或UTF⑶2編碼的記號。通俗點(diǎn)理解成字節(jié)順序標(biāo)記,傳輸標(biāo)識就好了。更多信息可了解官網(wǎng):http://www.unicode.org/faq/utf_bom.html#BOM
布局xml文件中出現(xiàn)Gradle不能自動查找自定義屬性:
In Gradle projects, always use http://schemas.android.com/apk/res-auto for custom attributes
將自定義屬性 http://schemas.android.com/apk/res/com.xxx.xxx 修改成:http://schemas.android.com/apk/res-auto 便可。以下圖:
3、Studio出現(xiàn)以下毛病解決方案
Error:duplicate files during packaging of APK ........
Path in archive: META-INF/LICENSE.txt
exclude 'META-INF/NOTICE.txt'
You can ignore those files in your build.gradle:
android {
packagingOptions {
exclude 'META-INF/LICENSE.txt'
}
}
Error:Execution failed for task ':app:packageDebug'.
> Duplicate files copied in APK META-INF/LICENSE.txt
File 1: /StudioProject/app/libs/xxx.jar
File 2: /StudioProject/app/libs/xxx.jar
由于多個jar包里包括了一樣的文件(NOTICE.txt),致使打包時由于擔(dān)心相互覆蓋問題而提示出錯。
嘗試下在 app 下的 build.gradle 中的 android 部份增加1段配置:
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。