2017-07-04 2 views
1

Hy,Erreur après l'importation du projet dans Android Studio

J'ai reçu un ancien code, codé en 2014 et il m'a été demandé de mettre à jour certaines fonctionnalités.

J'ai des problèmes pour exécuter le code, car il a été construit sur eclipse et maintenant je l'ai importé dans Android Studio. Tout d'abord, le code appelle 3 bibliothèques qui sont incluses dans le projet, l'une d'entre elles est en cpp. C'est pourquoi je pense qu'il était nécessaire d'ajouter le bundle-ndk.

J'ai ajouté: android.useDeprecatedNdk = true gradle-wrapper.properties

Ce sont les fichiers Gradle J'ai actuellement:

// Top-level build file where you can add configuration options common to all sub-projects/modules. 
buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.2.0' 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

première bibliothèque Gradle

apply plugin: 'com.android.library' 


android { 
    compileSdkVersion 16 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     minSdkVersion 5 
     targetSdkVersion 16 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

Deuxième bibliothèque

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 16 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     minSdkVersion 5 
     targetSdkVersion 5 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile project(':FirstLibrary') 
    compile 'com.android.support:support-v4:18.0.0' 
    compile files('libs/libGoogleAnalyticsV2.jar') 
} 

Troisième bibliothèque

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 16 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     minSdkVersion 5 
     targetSdkVersion 7 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile 'com.android.support:support-v4:18.0.0' 
} 

Module Gradle du projet

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 8 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     applicationId "com.application.id" 
     minSdkVersion 8 
     targetSdkVersion 17 
    } 

    buildTypes { 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' 
     } 
    } 
} 

dependencies { 
    compile project(':secondLbrary') 
    compile project(':thirdLibrary') 
} 

dernière erreur reçu:

Erreur: Échec de l'exécution de la tâche « : bibliothèque: compilerDe bugNdk '.

Error: Your project contains C++ files but it is not using a supported native build system. Consider using CMake or ndk-build integration with the stable Android Gradle plugin: https://developer.android.com/studio/projects/add-native-code.html or use the experimental plugin: http://tools.android.com/tech-docs/new-build-system/gradle-experimental .

Veuillez aviser !!!

Répondre

2

Ceci est généralement lié à la version Gradle - vous devriez mettre à jour vers la version récente et réessayer. Regardez ici Plugin is too old.

Aussi - pourquoi avez-vous besoin de "com.android.tools.build:gradle-experimental:0.7.0-alpha4"?

+0

Nous vous remercions de votre aide, au début lorsque j'ai construit le projet, il me donnait l'erreur suivante: Erreur: L'intégration NDK est obsolète dans le plugin actuel. Après quelques recherches, j'ai compris que j'avais besoin d'utiliser gradle experimental car comme mentionné plus haut, l'une des bibliothèques est en cpp. – coder

+0

Vous devriez envisager de migrer vers la version stable: http://tools.android.com/tech-docs/new-build-system/gradle-experimental/migrate-to-stable – yakobom

+0

J'ai suivi le lien suggéré, malheureusement je suis toujours confronté à cette erreur: l'intégration NDK est obsolète dans le plugin actuel. Mettra à jour la question pour inclure les modifications apportées – coder

0

Pour la compilation du code cpp en studio android:

  1. vous devez télécharger CMAKE, LLDB et NDK sur Android SDK Manager.
  2. vous devez créer CMakeList.txt et devez mettre un script pour compiler les fichiers cpp.
  3. vous avez besoin de mettre les lignes suivantes dans build.gradle

    externalNativeBuild {{ CMake chemin "CMakeLists.txt" }}

J'espère que cela vous aidera.

+0

J'ai eu aussi les mêmes problèmes et j'ai résolu avec cette réponse. Merci –

+0

Merci pour votre contribution, j'utilise ndk-build, comme je l'ai lu que vous utilisez NDK ou CMake. – coder

+0

J'ai téléchargé LLDB et NDK et je suis en train de définir l'emplacement de ndk-build dans local.properties et j'ai défini android.useDeprecatedNdk = true dans gradle-wrapper.properties. – coder