1. 程式人生 > >使用android studio過程中遇到的異常

使用android studio過程中遇到的異常

1.dexDebug ExecException finished with non-zero exit value 2
需要在gradle中配置下面的程式碼,原因是引用了多個libraries檔案




defaultConfig {
        multiDexEnabled true
}




2.Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/BackStackState$1.class




原因:在所新增的jar包或aar包中也引用了support-V4,與工程中引用的相沖突
Ctrl+N --> 在搜尋框中輸入BackStackState --> 查詢到所有引用該類的類,這些類即為引起衝突的類
去掉本工程中gradle中用於引用有衝突的包的程式碼或者將衝突的程式碼從jar包或aar包中移除,確保一個module中只引用了一份相同的第三方包




3.project sturcture和Project Structure 無論是按快捷鍵或者是從files中開啟都不顯示




event log中報:IllegalArgumentException:Multiple entries with same key: Google Inc.:Google APIs:23=Google APIs (Google Inc.) (API 23) and Google Inc.:Google APIs:23=Google APIs (Google Inc.) (API 23)




解決辦法:先看一下系統配置的SDK的位置和Android Studio所用的路徑是否一致,如果不一致重新配置系統的SDK路徑或者是重新修改Android Studio的SDK路徑
通過SDK Manager刪除掉google API23
如果解決不了,解除安裝android studio -->重新安裝 ,還有問題點選File --> Invalidate Cashes/Restart --> Invalidate and Restart,解決不了繼續通過SDK Manager刪除掉google API23




4.如果依賴工程和主工程中有同名同類型的資原始檔,需要修改依賴工程中的資源名稱編譯時才不會報錯,如果依賴工程中的這個資原始檔是整個工程都不需要用到的,可以直接刪掉;




5..Logcat的console中,顯示”no debuggable applications”的問題:Tools→Android→Enable ADB Integration;


6.移除所有support-v4的依賴
configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}


6.14.Execution failed for task ':xxx:validateRelealseSigning'.
> Keystore file E:\code\xxxr\xxx_keystore not found for signing config 'relealse'.




build.gradle目錄中的配置內容為
 //簽名
    signingConfigs {




        relealse {
            storeFile file("../xxx_keystore")




            storePassword "xxx"
            keyAlias "xxx"
            keyPassword "xxx"
        }
    }








../xxx_keystore指的是該工程所在的工作空間目錄,在具體工程目錄的上一級,如果檔案位置放錯會導致找不到檔案


7.出現下面的異常時




Error:Execution failed for task ':xxx:transformClassesAndResourcesWithProguardForRelease'.
> java.io.FileNotFoundException: E:\testimportintostudio\xxx\proguard.cfg (系統找不到指定的檔案。)


從eclipse中匯出的gradle工程,會報這個錯誤
一種方式可以將eclipse中的proguard.cfg這個檔案拷貝到所提示的目錄中
另一種方式可以將Module中的build.gradle中的混淆編譯程式碼改為

//載入預設混淆配置檔案
//            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.cfg'


改為
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'




8.導包時報錯This fragment should provide a default constructor,
忽略錯誤
lintOptions { 
  abortOnError false 
  checkReleaseBuilds false 





9.從eclipse中匯出的工程在android studio中亂碼
下載超級批量轉碼轉換 --> 將所要轉碼的檔案所在的資料夾拖到工具中 -- >不管原來是什麼編碼,將編碼方式複選框中選中你所要轉換的編碼格式-->點選開始

注:轉碼之前將程式碼複製一份,因為偶爾有個別檔案在轉碼過程中出現異常,程式碼只剩下一半的問題,需將原來的程式碼拷貝過去

10.E:\MyApplication3\app\build\intermediates\res\merged\apus\debug\values-v23\values-v23.xml
Error:(4) Error retrieving parent for item: No resource found that matches the given name 


'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(33) Error retrieving parent for item: No resource found that matches the given name 


'android:Widget.Material.Button.Colored'.

編譯時所需要的資原始檔所需要的SDK版本是23,將編譯的版本改為23就可以了  compileSdkVersion 23

11.

Error:Error converting bytecode to dex:
Cause: Dex cannot parse version 52 byte code.
This is caused by library dependencies that have been compiled using Java 8 or above.
If you are using the 'java' gradle plugin in a library submodule add 
targetCompatibility = '1.7'
sourceCompatibility = '1.7'
to that submodule's build.gradle file.

解決辦法:在android層級新增jackOptions選項

android {
  ...


  compileSdkVersion 23
  buildToolsVersion "24rc2"
  defaultConfig {
  ...
    jackOptions {
      enabled true
    }
  }

  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
} 


12.Error:A problem occurred configuring project ':app'.
> Jack is required to support java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.

解決辦法:在android層級新增jackOptions選項

android {
  ...


  compileSdkVersion 23
  buildToolsVersion "24rc2"
  defaultConfig {
  ...
    jackOptions {
      enabled true
    }
  }

  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
} 


相關推薦

使用android studio過程遇到的異常

1.dexDebug ExecException finished with non-zero exit value 2 需要在gradle中配置下面的程式碼,原因是引用了多個libraries檔案 defaultConfig {         multiDexEnabl

Android 開發過程異常奔潰處理

開發過程中捕獲異常並定位問題解決問題是基本之一,當然也有很多第三方的平臺,比如接入友盟統計、第三方加固(比如360加固等)、騰訊Bugly等都會為我們收集到異常日誌。但是,我個人認為開發及測試過程中編寫一個Crash收集工具類尤為重要。下面分享一下我的crash處理。直接上程

Android studio開發遇到的一些異常

1、Gradle: A problem occurred configuring project Weird error message: 1 2 3 4 5 6 Gradle: A pr

android studio 開發啟動android項目報錯sdk版本不一致解決方案

技術分享 發現 依賴 adl 目的 clas studio ima 需要 安卓項目開發中新建項目後再run‘的時候發現報錯com.android.support:appcompat-v7依賴報錯 查看下build.gredle所配置的參數: 打開項目的bui

Android Studio更改工程名異常解決方案 :can't rename root module

包括 extern ext 相關 文件名 post roo 手動 修改文件 在修改Android Studio 中 project的名字時 ,提示 “can’t rename root module”。 這是因為Android S

動態查詢語句---存儲過程異常處理

post 處理 into cti 可見 復雜 一個 color exec 動態查詢語句 語法 PREPARE stmt_name FROM preparable_stmt; ----創建 EXECUTE stmt_name [USING @var_nam

Android Studio 3 搭建protobuf環境

  考慮Android專案中為提高傳輸速率、降低資料量以達到優化使用者體驗,就選擇了使用protobuf。那麼如何在專案中使用Android Studio 3 進行整合呢? 接下來讓我來帶你去看看如何搭建。 工具/原料 安卓手機 Android Studi

android開發過程一些遇到的問題

記錄android開發過程中遇到的問題。 1.在一個xml中能否使用同一個include多次 http://www.apkbus.com/android-104152-1-1.html android中include標籤的使用 http://

Android 等待過程的轉圈動畫

private CustomProgressDialog progressDialog; //例項化自定義CustomProgressDialog progressDialog = new CustomProgressDialog(context, R.style.progressDialog);

Android開發過程的坑及解決方法收錄(四)

1.某個控制元件要放在Linearlayout佈局的底部(底部導航條) <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.

Android開發過程的坑及解決方法收錄

  1.某個控制元件要放在Linearlayout佈局的底部(底部導航條)      <LinearLayout      android:layout_width="match_parent"      android:orientation="vertical"      android:layou

Android Studio專案的Gradle檢視內容

Android Studio專案中的Gradle檢視內容 使用Android Studio的同學都知道,我們可以方便的在Gradle檢視中檢視專案中的Task, 雙擊Task就可以執行它。如下圖所示: 那麼檢視中的元素跟我們的專案都有什麼對應關係呢?請往下看。 Grad

Android studio專案的gradle.properties詳解

Android studio專案中的gradle.properties詳解 在使用Android Studio新建Android專案之後,在專案根目錄下會預設生成一個gradle.properties檔案,我們可以在裡面做一些Gradle檔案的全域性性的配置,也可以將比較私密的資訊放

Android-0.Android Studio佈局layout_weight用法

Indicates how much of the extra space in the LinearLayout is allocated to the view associated with these LayoutParams. Specify 0 if the v

Android-0.Android Studio佈局ConstraintLayout及designer簡介

Design and blueprint:用於選擇在編輯器中檢視佈局的方式。Design 檢視顯示佈局的彩色預覽,而 Blueprint 檢視僅顯示每個檢視的輪廓。或者,您可以並排檢視 Design + Blueprint 。 Screen orientation:用於在橫屏和豎屏方向之間旋轉裝置。 D

android 開發過程涉及到的清除快取操作

android 開發過程中會遇到很多快取,常常使人摸不清楚,這裡總結一下,希望下次遇到快取相關問題能有所幫助。 Clean Project 點選 Clean Project 會執行 clean、:

Android 開發過程遇到的問題Error:Execution failed for task ':app:processDebugManifest'

在開發過程中遇到了這樣一個問題: 問題1: Error:Execution failed for task ':app:processDebugManifest'.> Manifest merger failed with multiple errors, see l

android.intent.action.SCREEN_ON和android.intent.action.SCREEN_OFF待機廣播在TV android開發過程,不響應原因.

待機廣播,又叫螢幕喚醒廣播:android.intent.action.SCREEN_ON和android.intent.action.SCREEN_OFF 在使用過程中需要主要以下兩點: 1.需要在AndroidManifest.xml添如下許可權: <uses

Android Studio專案三種依賴的新增方式

通常一個AS專案中的依賴關係有三種,一是本地依賴(主要是對本地的jar包),二是模組依賴,三是遠端依賴;新增這些依賴的目的在於上我們想要在專案的某一個模組中使用其中的功能,比如okttp這個網路框架庫,如果我們想要在專案的app模組下使用這個庫的功能,則需要在app模組的build.gradle

下載android程式碼過程,提示以下錯誤: error: Failed connect to android.googlesource.com:443;

下載android程式碼過程中,提示以下錯誤: error: Failed connect to android.googlesource.com:443;Connection refused while accessinghttps://android.googles