无法使用API​​ 22构建Android应用程序

时间:2016-05-14 07:14:14

标签: android api gradle android-gradle

这是我的gradle.build文件: https://paste.fedoraproject.org/366276/09908146/

但是当我尝试同步gradle或构建apk时。我有这个错误:

C:\Users\alex\AndroidStudioProjects\Pieceofcake\app\build\intermediates\res\merged\debug\values-v23\values-v23.xml

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

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

不,我不想使用23 API。决不。因为谷歌更改了权限结构,我不想写6+以上的解决方法。如何用22 API修复它?

2 个答案:

答案 0 :(得分:0)

我认为如果您的构建工具文件夹中没有预先存在构建工具22.0.0和21.0.0,那么您需要将其下载并粘贴到sdk构建工具文件夹中。然后,如果您不想使用v-23,则可以访问此库功能。

答案 1 :(得分:0)

这是因为您正在使用:

compile 'com.facebook.android:facebook-android-sdk:4.+'

此库与

具有依赖关系
  <groupId>com.android.support</groupId>
  <artifactId>support-v4</artifactId>
  <version>23.2.1</version>

您可以查看here

它导致了这个问题,因为使用支持v23,你必须使用API​​编译 使用:

  compileSdkVersion 23
  

不,我不想使用23 API。决不。因为谷歌更改了权限结构,我不想写6+以上的解决方法。如何用22 API修复它?

这是错误的。它不依赖于用于编译的api而是targetSdkVersion

检查doc

  
      
  • 如果设备运行Android 5.1或更低版本,或者您应用的目标SDK为22或更低:如果您在清单中列出了危险权限,则用户必须在安装时授予权限应用程序;如果他们不授予权限,系统根本不会安装该应用程序。

  •   
  • 如果设备运行的是Android 6.0或更高版本,并且您应用的目标SDK为23或更高:应用必须列出清单中的权限,并且必须请求所需的每个危险权限当应用程序运行时。用户可以授予或拒绝每个权限,即使用户拒绝权限请求,应用也可以继续以有限的功能运行。

  •   

Hovewer非常重要的是要注意:

  

注意:从Android 6.0(API级别23)开始,用户可以随时撤消任何应用的权限,即使该应用针对较低的API级别。无论您的应用针对什么API级别,您都应该测试自己的应用,以验证其在错过所需权限时是否正常运行。