2016-06-03 17 views
1

Ich versuche, Phonegap-Plugin-Diagnose verwenden, aber es funktioniert nicht. Hier ist, wie ich es in meinem cnfig.xml hinzufügenPhonegap-Diagnose-Plugin funktioniert nicht

<widget 
xmlns="http://www.w3.org/ns/widgets" 
xmlns:gap="http://phonegap.com/ns/1.0" 
id="com.crondale.tippnett" 
version="1.1.10"> 
<name>TippNett</name> 
<description>TippNett er et system for å som bidrar til bedre massebalanse. Systemet finner anlegg i nærheten med motsatt massebehov. Det bidrar til kortere kjørelengde og raskere anleggsutførsel. Du sparer penger, i tillegg til at miljøet blir spart for CO2 utslipp.</description> 
<author href="http://www.crondale.com" email="[email protected]">Crondale</author> 
<content src="index.html" /> 
<access origin="*" /> 
<preference name="SplashScreen" value="screen" /> 
<preference name="windows-target-version" value="8.0" /> 
<preference name="windows-phone-target-version" value="8.1" /> 
<preference name="target-device" value="universal" /> 

<platform name="android"> 
    <preference name="orientation" value="portrait" /> 
    <preference name="android-build-tool" value="gradle" /> 
</platform> 

<platform name="ios"> 
    <preference name="orientation" value="portrait" /> 
</platform> 

<gap:plugin name="cordova-plugin-whitelist" source="npm" version="1.0.0" /> 
<gap:plugin name="cordova-plugin-device" source="npm" version="1.0.1" /> 
<gap:plugin name="cordova-plugin-inappbrowser" source="npm" version="1.0.1" /> 
<gap:plugin name="cordova-plugin-network-information" source="npm" version="1.2.1" /> 
<gap:plugin name="cordova-plugin-geolocation" source="npm"/> 


// here I add it 
<gap:plugin name="cordova.plugins.diagnostic" source="npm" /> 


    .... 
</widget> 

Hier ist mein Code in index.js

function onDeviceReady() { 
     // Handle the Cordova pause and resume events 

     alert(cordova.plugins); // I get un-define here 
     cordova.plugins.diagnostic.isLocationEnabledSetting(function(enabled){ 
      alert(11); 
     if(enabled) 
     { 
      alert("Location Setting is enabled"); 
     } 
     else 
     { 
      alert("Location Setting is disabled"); 
     } 
    }, function(error){ 
     alert("The following error occurred: "+error); 
    }); 

habe ich versucht, es sowohl auf Android und auf ios auch. Aber ich bekomme das gleiche Ergebnis in beiden.

Dies ist in meinem Buildprotokoll

Build Date: 2016-06-06 07:18:09 +0000 
    Build option --'' not recognized (ignoring). 
    Running: /project/gradlew cdvBuildRelease -b /project/build.gradle -Dorg.gradle.daemon=true -PcdvBuildMultipleApks=false 
    :preBuild 
    :compileReleaseNdk 
    :preReleaseBuild 
    :checkReleaseManifest 
    :preDebugBuild 
    :CordovaLib:compileLint 
    :CordovaLib:copyDebugLint UP-TO-DATE 
    :CordovaLib:mergeDebugProguardFiles 
    :CordovaLib:preBuild 
    :CordovaLib:preDebugBuild 
    :CordovaLib:checkDebugManifest 
    :CordovaLib:prepareDebugDependencies 
    :CordovaLib:compileDebugAidl 
    :CordovaLib:compileDebugRenderscript 
    :CordovaLib:generateDebugBuildConfig 
    :CordovaLib:generateDebugAssets UP-TO-DATE 
    :CordovaLib:mergeDebugAssets 
    :CordovaLib:generateDebugResValues 
    :CordovaLib:generateDebugResources 
    :CordovaLib:packageDebugResources 
    :CordovaLib:processDebugManifest 
    :CordovaLib:processDebugResources 
    :CordovaLib:generateDebugSources 
    :CordovaLib:compileDebugJavaNote: Some input files use or override a deprecated API. 
    Note: Recompile with -Xlint:deprecation for details. 

    :CordovaLib:processDebugJavaRes UP-TO-DATE 
    :CordovaLib:packageDebugJar 
    :CordovaLib:compileDebugNdk 
    :CordovaLib:packageDebugJniLibs UP-TO-DATE 
    :CordovaLib:packageDebugLocalJar UP-TO-DATE 
    :CordovaLib:packageDebugRenderscript UP-TO-DATE 
    :CordovaLib:bundleDebug 
    :CordovaLib:copyReleaseLint UP-TO-DATE 
    :CordovaLib:mergeReleaseProguardFiles 
    :CordovaLib:preReleaseBuild 
    :CordovaLib:checkReleaseManifest 
    :CordovaLib:prepareReleaseDependencies 
    :CordovaLib:compileReleaseAidl 
    :CordovaLib:compileReleaseRenderscript 
    :CordovaLib:generateReleaseBuildConfig 
    :CordovaLib:generateReleaseAssets UP-TO-DATE 
    :CordovaLib:mergeReleaseAssets 
    :CordovaLib:generateReleaseResValues 
    :CordovaLib:generateReleaseResources 
    :CordovaLib:packageReleaseResources 
    :CordovaLib:processReleaseManifest 
    :CordovaLib:processReleaseResources 
    :CordovaLib:generateReleaseSources 
    :CordovaLib:compileReleaseJavaNote: Some input files use or override a deprecated API. 
    Note: Recompile with -Xlint:deprecation for details. 

    :CordovaLib:processReleaseJavaRes UP-TO-DATE 
    :CordovaLib:packageReleaseJar 
    :CordovaLib:compileReleaseNdk 
    :CordovaLib:packageReleaseJniLibs UP-TO-DATE 
    :CordovaLib:packageReleaseLocalJar UP-TO-DATE 
    :CordovaLib:packageReleaseRenderscript UP-TO-DATE 
    :CordovaLib:bundleRelease 
    :prepareComAndroidSupportAnimatedVectorDrawable2340Library 
    :prepareComAndroidSupportAppcompatV72340Library 
    :prepareComAndroidSupportSupportV42340Library 
    :prepareComAndroidSupportSupportVectorDrawable2340Library 
    :prepareProjectCordovaLibUnspecifiedReleaseLibrary 
    :prepareReleaseDependencies 
    :compileReleaseAidl 
    :compileReleaseRenderscript 
    :generateReleaseBuildConfig 
    :generateReleaseAssets UP-TO-DATE 
    :mergeReleaseAssets 
    :generateReleaseResValues 
    :generateReleaseResources 
    :mergeReleaseResources 
    :processReleaseManifest 
    :processReleaseResources/project/build/intermediates/res/release/values-v23/values.xml:6: error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'. 

    /project/build/intermediates/res/release/values-v23/values.xml:35: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'. 

    FAILED 

    FAILURE: Build failed with an exception. 

    * What went wrong: 
    Execution failed for task ':processReleaseResources'. 
    > com.android.ide.common.internal.LoggedErrorException: Failed to run command: 
     /android-sdk/build-tools/23.0.1/aapt package -f --no-crunch -I /android-sdk/platforms/android-22/android.jar -M /project/build/intermediates/manifests/full/release/AndroidManifest.xml -S /project/build/intermediates/res/release -A /project/build/intermediates/assets/release -m -J /project/build/generated/source/r/release -F /project/build/intermediates/res/resources-release.ap_ --custom-package com.crondale.tippnett -0 apk --output-text-symbols /project/build/intermediates/symbols/release 
    Error Code: 
     1 
    Output: 
     /project/build/intermediates/res/release/values-v23/values.xml:6: error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'. 

     /project/build/intermediates/res/release/values-v23/values.xml:35: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'. 



    * Try: 
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

    BUILD FAILED 

    Total time: 8.513 secs 

    /project/cordova/node_modules/q/q.js:126 
         throw e; 
        ^
    Error code 1 for command: /project/gradlew with args: cdvBuildRelease,-b,/project/build.gradle,-Dorg.gradle.daemon=true,-PcdvBuildMultipleApks=false 
+0

Haben Sie die Cordova.js-Datei in Ihren HTML-Code eingefügt? Auch in deiner config.xml sollte dieses Plugin als gap: plugin oder nur plugin ?? Sie müssen das überprüfen, da ich praktische Erfahrung in Cordova habe nicht Telefon – Gandhi

+0

Ja, ich bin Cordova.JS und es ist etwas mit diesem Plugin, denn wenn ich es entfernen, funktioniert es. Ich habe es in Lücke geändert: aber immer noch nicht funktioniert. @Gandhi – mohsinali1317

+0

@Chaudhray haben Sie deviceready Ereignis-Listener in Ihrem HTML hinzugefügt? – Gandhi

Antwort

1

Wie in der offiziellen Diagnose Plugin-Seite erwähnt, wenn Sie Android API Version 22 oder niedriger verwenden (was in Ihrem Fall zutrifft), dann sollten Sie das Erbe verwenden Zweig des Plugins (cordova.plugins.diagnostic.api-22) anstelle der Hauptzweig.

Der Auszug aus der Plugin-Seite ist wie folgt:

Für Anwender, die gegen API 22 aufbauen wollen oder unten, ein Zweig des Plug-ins Repo ist, die die Funktionalität alle außer Android 6 Runtime-Berechtigungen enthalten . Dadurch wird die Abhängigkeit von API 23 aufgehoben und Sie können ältere API-Versionen (22 und später) erstellen.

Das Vermächtnis Zweig veröffentlicht als cordova.plugins.diagnostic.api-22, NPM, so dass Sie diese Plugin-ID verwenden brauchen, wenn sie fügt hinzu:

cordova plugin add cordova.plugins.diagnostic.api-22 

Dieses reolsves das Problem in Android API 22 und darunter.

Verwandte Themen