Motorola EMDK 3.1错误(app \ build \ intermediates \ explosion-aar \ com.android.support \ appcompat-v7 \ 22.2.1 \ res \ values-v21 \ values-v21.xml)

时间:2015-10-09 14:03:45

标签: android android-studio motorola-emdk

我使用Motorola EMDK 3.1在Android Studio中编写一个小型扫描应用程序。此应用程序应在Android 4.1上的TC55上运行。

当我尝试运行我的应用程序时出现此错误:

 C:\Users\herold.IDENTWERK\Desktop\EmdkTest\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\22.2.1\res\values-v17\values-v17.xml
    Error:(6, 21) No resource found that matches the given name: attr 'android:textAlignment'.
    Error:(10, 21) No resource found that matches the given name: attr 'android:paddingEnd'.
    Error:(10, 21) No resource found that matches the given name: attr 'android:paddingEnd'.
    Error:(13, 21) No resource found that matches the given name: attr 'android:paddingStart'.
    Error:(17, 21) No resource found that matches the given name: attr 'android:layout_marginEnd'.
    Error:(10, 21) No resource found that matches the given name: attr 'android:paddingEnd'.
    Error:(23, 21) No resource found that matches the given name: attr 'android:layout_marginStart'.
    Error:(26, 21) No resource found that matches the given name: attr 'android:layout_alignParentStart'.
    Error:(6, 21) No resource found that matches the given name: attr 'android:textAlignment'.
    Error:(10, 21) No resource found that matches the given name: attr 'android:paddingEnd'.
    Error:(13, 21) No resource found that matches the given name: attr 'android:paddingStart'.
    Error:(26, 21) No resource found that matches the given name: attr 'android:layout_alignParentStart'.
    Error:(37, 21) No resource found that matches the given name: attr 'android:layout_toStartOf'.
    Error:(40, 21) No resource found that matches the given name: attr 'android:layout_alignParentEnd'.
    Error:(44, 21) No resource found that matches the given name: attr 'android:layout_toEndOf'.
    Error:(37, 21) No resource found that matches the given name: attr 'android:layout_toStartOf'.
    Error:(23, 21) No resource found that matches the given name: attr 'android:layout_marginStart'.
    Error:(13, 21) No resource found that matches the given name: attr 'android:paddingStart'.

这是我的Gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 'Symbol Technologies, Inc.:EMDK 3.1 (API 16):16'
    buildToolsVersion '21.1.1'

    defaultConfig {
        applicationId "com.example.herold.emdktest"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:22.2.1'

2 个答案:

答案 0 :(得分:0)

使用此而不是你的。我希望它能运作。

compileSdkVersion 21
buildToolsVersion '21.1.2'

compile 'com.android.support:appcompat-v7:21.0.3'

确保添加了Motorola EMDK 3.1 jar。

现在,您应该使用

 compileSdkVersion 24
 buildToolsVersion "24.0.2"

 compile 'com.android.support:appcompat-v7:24.2.0'

答案 1 :(得分:0)

您收到错误是因为最新的AndroidStudio模板会生成无法使用API​​级别16进行编译的应用程序。就像您在此处针对EMDK进行编译一样。

您可以在EMDK download for the Mac中找到最新版本的jar库(可以作为zip存档使用,而不仅仅是像Windows一样的安装包)。

您最好的选择是手动将com.symbol.emdk.jar包含在项目的libs文件夹中,并使用最新的SDK编译应用程序。

android {
  compileSdkVersion 23
   buildToolsVersion "23.0.1"

最后一个操作是指示gradle在最终的apk中不编译emdk jar:

dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'], exclude: ['com.symbol.emdk.jar'])
  compile 'com.android.support:appcompat-v7:23.0.1'
   provided fileTree(dir: 'libs', include: ['com.symbol.emdk.jar'])
}