Le projet Android Cordova ne compile pas

Cordova version: 4.3.0

Version java "1.8.0_40" 64bit

  • Comment crypter les actifs HTML + JS dans l'application mobile Android Phonegap?
  • Cordova ubuntu: une erreur s'est produite lors de l'apparition de cibles Android
  • Android ARMv6 / v7 et VFP / NEON
  • Phonegap, connexion au serveur infructueuse
  • Comment puis-je charger une page Web à l'intérieur de la visualisation de Phonegap?
  • PhoneGap / Cordova Android obtient la taille de l'écran après onDeviceReady
  • OS X 10.10.2

    Ant version: 1.9.4

    Entrez la description de l'image ici

    Target android SDK J'utilise 19 ans.

    Lorsque je lance 'ant release' dans le dossier platform / android / CordovaLib, j'obtiens la sortie suivante avec une erreur:

    Buildfile: .../platforms/android/CordovaLib/build.xml -set-mode-check: -set-release-mode: -release-obfuscation-check: [echo] proguard.config is ${proguard.config} -pre-build: -check-env: [checkenv] Android SDK Tools Revision 24.1.2 [checkenv] Installed at /Users/.../Library/Android/sdk -setup: [echo] Project Name: MainActivity [gettype] Project Type: Android Library -build-setup: [getbuildtools] Using latest Build Tools: 21.1.2 [echo] Resolving Build Target for MainActivity... [gettarget] Project Target: Android 4.4.2 [gettarget] API level: 19 [echo] ---------- [echo] Creating output directories if needed... [mkdir] Created dir: .../platforms/android/CordovaLib/bin/rsObj [mkdir] Created dir: .../platforms/android/CordovaLib/bin/rsLibs [echo] ---------- [echo] Resolving Dependencies for MainActivity... [dependency] Library dependencies: [dependency] No Libraries [dependency] [dependency] ------------------ [echo] ---------- [echo] Building Libraries with 'release'... [subant] No sub-builds to iterate on -code-gen: [mergemanifest] No changes in the AndroidManifest files. [echo] Handling aidl files... [aidl] No AIDL files to compile. [echo] ---------- [echo] Handling RenderScript files... [echo] ---------- [echo] Handling Resources... [aapt] No changed resources. R.java and Manifest.java untouched. [echo] ---------- [echo] Handling BuildConfig class... [buildconfig] Generating BuildConfig class. -pre-compile: -compile: [javac] Compiling 98 source files to .../platforms/android/CordovaLib/bin/classes [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options. [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewClient.java:35: error: cannot find symbol [javac] import android.webkit.ClientCertRequest; [javac] ^ [javac] symbol: class ClientCertRequest [javac] location: package android.webkit [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewClient.java:145: error: cannot find symbol [javac] public void onReceivedClientCertRequest (WebView view, ClientCertRequest request) [javac] ^ [javac] symbol: class ClientCertRequest [javac] location: class CordovaWebViewClient [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaChromeClient.java:342: error: cannot find symbol [javac] public boolean onShowFileChooser(WebView webView, final ValueCallback<Uri[]> filePathsCallback, final WebChromeClient.FileChooserParams fileChooserParams) { [javac] ^ [javac] symbol: class FileChooserParams [javac] location: class WebChromeClient [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaClientCertRequest.java:25: error: cannot find symbol [javac] import android.webkit.ClientCertRequest; [javac] ^ [javac] symbol: class ClientCertRequest [javac] location: package android.webkit [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaClientCertRequest.java:32: error: cannot find symbol [javac] private final ClientCertRequest request; [javac] ^ [javac] symbol: class ClientCertRequest [javac] location: class CordovaClientCertRequest [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaClientCertRequest.java:34: error: cannot find symbol [javac] public CordovaClientCertRequest(ClientCertRequest request) { [javac] ^ [javac] symbol: class ClientCertRequest [javac] location: class CordovaClientCertRequest [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaChromeClient.java:340: error: cannot find symbol [javac] @TargetApi(Build.VERSION_CODES.LOLLIPOP) [javac] ^ [javac] symbol: variable LOLLIPOP [javac] location: class VERSION_CODES [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:197: error: cannot find symbol [javac] if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) [javac] ^ [javac] symbol: variable LOLLIPOP [javac] location: class VERSION_CODES [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:200: error: cannot find symbol [javac] cookieManager.setAcceptThirdPartyCookies(this, true); [javac] ^ [javac] symbol: method setAcceptThirdPartyCookies(CordovaWebView,boolean) [javac] location: variable cookieManager of type CookieManager [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewClient.java:143: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaChromeClient.java:341: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] .../platforms/android/CordovaLib/src/org/apache/cordova/CordovaChromeClient.java:348: error: cannot find symbol [javac] Uri[] result = WebChromeClient.FileChooserParams.parseResult(resultCode, intent); [javac] ^ [javac] symbol: variable FileChooserParams [javac] location: class WebChromeClient [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] 12 errors [javac] 3 warnings BUILD FAILED /Users/.../Library/Android/sdk/tools/ant/build.xml:720: The following error occurred while executing this line: /Users/.../Library/Android/sdk/tools/ant/build.xml:734: Compile failed; see the compiler error output for details. Total time: 3 seconds 

    Android, fourmi, java sont tous dans le chemin d'accès.

    J'ai essayé de jouer avec les sdks cibles et j'ai essayé de télécharger différentes versions, mais j'ai manqué d'idées. Toute aide serait très appréciée.

    AndroidManifest – depuis le dossier CordovaLib:

     <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.apache.cordova" android:versionName="1.0" android:versionCode="1"> <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> </manifest> 

    Ne comprenez pas pourquoi il se réfère à LOLLIPOP dans le message d'erreur, puis pourquoi ne peut-il pas le trouver depuis son installation.

    3 Solutions collect form web for “Le projet Android Cordova ne compile pas”

    Je pense que c'est parce que Cordova 4.3.0 a référencé l'android.webkit.ClientCertRequest, qui a été récemment ajouté au niveau API 21.

    FYI: https://developer.android.com/reference/android/webkit/ClientCertRequest.html

    Installez les outils de compilation Android version 21 et 22 à partir de SDK Manager.
    Une fois les outils de construction installés, supprimez le dossier des plates-formes à l'intérieur de votre application.
    Allez à Cordova et ajoutez la plate-forme Android à nouveau (en utilisant la plate-forme cordova, ajoutez la commande Android ).
    Une fois que la plate-forme est réinstallée, reconstruisez l'application (en utilisant la commande de construction cordova ) et elle se développera avec succès

    Votre Cordova est trop élevé pour fonctionner avec Android Api 19. Cela signifie qu'il est plus récent, donc il fait référence aux bibliothèques que Api 19 n'a pas et donne une erreur. Donc, il faut que vous bousculiez un peu.

    Désinstallez-le:

     sudo npm uninstall -g cordova 

    Ensuite, installez une ancienne version de cordova qui fonctionne bien avec Api 19:

     sudo npm install -g cordova@4.0.0 

    Et maintenant faire tout de nouveau à partir de rien. "Cordova create blabla", "cordova add platform android", "cordova run android", etc.

    Pour obtenir une liste des versions cordova, procédez comme suit:

     npm view cordova versions 

    Mais je sais que 4.0.0 fonctionnera avec Api 19 puisque j'ai eu le même problème.

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.