2014-07-02 16 views
26

Ich versuche, meine HelloWorld-Anwendung Holo-Thema zu Material.Light.DarkActionBar Thema (wie von What's neue Android Development Tools Sitzung gesagt). Aber ich habe folgenden Fehler bekommen. Ich versuche, Ziel-SDK-Version ist 21 zu ändern. Aber wir hatten nicht 21 SDK in SDK-Manager. In dieser Sitzung sagten sie, setze Stil-XML für v-21.Keine Ressource gefunden, die den angegebenen Namen 'android: Theme.Material.Light.DarkActionBar'

Werte/styles.xml

<resources> 

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
    </style> 

</resources> 

Werte-V21/styles.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    !-- Base application theme. --> 
    <style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
    </style> 
</resources> 

build.gradle

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 20 
    buildToolsVersion "20.0.0" 

    defaultConfig { 
     applicationId "com.ramapps.helloworld" 
     minSdkVersion 15 
     targetSdkVersion 20 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
} 

Fehler:

Error:Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Light.DarkActionBar'. 
Error:Execution failed for task ':app:processDebugResources'. 
> com.android.ide.common.internal.LoggedErrorException: Failed to run command: 
    /Applications/Android Studio.app/sdk/build-tools/android-4.4W/aapt package -f --no-crunch -I /Applications/Android Studio.app/sdk/platforms/android-20/android.jar -M /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/intermediates/manifests/debug/AndroidManifest.xml -S /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/intermediates/res/debug -A /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/intermediates/assets/debug -m -J /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/generated/source/r/debug -F /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/intermediates/libs/app-debug.ap_ --debug-mode --custom-package com.ramapps.helloworld -0 apk 
    Error Code: 
    1 
    Output: 
    /Users/Ram_PC/Ram/MyDrive/My_Workspaces/Android_Studio_Workspace_L/HelloWorld/app/build/intermediates/res/debug/values-v21/values.xml:7: error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Light.DarkActionBar'. 
+1

* Aber wir hatten nicht 21 SDK in SDK Manager * Was sagt Ihnen das? Außerdem sollten Sie wahrscheinlich Ihre Manifest-XML für die API-Versionen ändern. –

+0

@ThorstenDittmar In SDK Manager erwähnt sie wie Android L (API 20, L Vorschau) .Auch habe ich versucht, MinSDK-Version in Manifest xml.Aber nicht funktioniert – Ramprasad

+1

AFAIK API20 ist mehr oder weniger für Wearables (wie Sie in Ihrem Fehler sehen können Es verwendet Android-4.4W). Das Ändern von _compileSdkVersion_ in _'android-L'_ könnte helfen. – harism

Antwort

29

Sie können versuchen, die Werte in der build.gradle wie folgt aus (für API 25 aktualisiert) einzustellen:

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.3" 
    defaultConfig { 
    minSdkVersion 21 //oldest version you would like to support 
    targetSdkVersion 25 
    versionCode 1 
    versionName "1.0" 
    ... 
    } 
} 
+0

Es funktioniert super. – Ramprasad

+1

Also funktioniert das nicht für API <21? – MeetM

+0

Nicht getestet, aber ich kann zu 'minSdkVersion 16' wechseln und es funktioniert immer noch gut. – theyanu

8

Wir nicht Anwendungen, die aber L auf etwas L Vorschau Ziel installieren Geräte.

Ändern res/values/styles.xml, Theme.Material.Light zu Theme.Light und folgende build.gradle arbeitete für mich.

android { 
    compileSdkVersion 20 
    buildToolsVersion '20.0.0' 
    defaultConfig { 
     applicationId 'com.example.android.market.licensing' 
     minSdkVersion 13 
     targetSdkVersion 20 
     versionCode 1 
     versionName '1.0' 
    } 

Obwohl Theme.Material.Light ist Teil der 20sdk Version, aber irgendwie ist es nicht für mich arbeiten.

1

Ich denke, das Problem hier ist, dass Sie Ihre buildToolsVersion vor Android L-Version einstellen müssen.

Hier mein gradle

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 19 
    buildToolsVersion "19.1.0" 

    defaultConfig { 
     applicationId "com.mayuonline.ribbit" 
     minSdkVersion 15 
     targetSdkVersion 19 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    // You must install or update the Support Repository through the SDK manager to use this dependency. 
    compile 'com.android.support:support-v13:19.+' 
} 

Vergewissern Sie sich auch die styles.xml wie unten

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="AppTheme" parent="android:Theme.Light"> 
    </style> 
</resources> 

ändern Dies sollte das Problem lösen. für mich

3

Ziel festlegen Ihrer Anwendung auf API-Ebene 21 von AssemblyMenifest.xml oder <uses-sdk android:targetSdkVersion="21" android:minSdkVersion="19" /> Tag zu Ihrem AssemblyMenifest.xml

2

I Theme.Material.Light zu Theme.Light und es funktionierte geändert hinzufügen .

+0

Ja, das hat auch bei mir funktioniert, und vergiss nicht zu tun: "tns prepare android" gefolgt von: "tns prepare android" – mzalazar

Verwandte Themen