0

我想在我自己的库中使用 android support v7 库的资源,我设置

android.library.reference.1=../android-support-v7-appcompat

但是当项目在gen文件夹中构建时没有生成android.support.appcompat.R.java并且我不能使用资源。当我设置android.library=false所有构建正常时,文件生成。但在另一个应用程序项目中使用这个 jar 我不能:

[2013-11-03 13:49:23 - Dex Loader] Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;
[2013-11-03 13:49:23 - MediaKuzbass] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;
4

2 回答 2

2

您的项目路径上有两次 support-v7 库,请更改它。您想要构建的项目和您正在使用的不同库很可能对同一个 appcompat 库使用不同的文件夹。

于 2013-11-03T10:21:27.417 回答
0

将相同的 apptheme 设置为两个 manifest 。

不好的例子:

你的库:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/MyThemeChildOfAppCompat" >

你的应用:

<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

你会得到错误。

解决方案:

你的库:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/MyThemeChildOfAppCompat" >

你的应用:

<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/MyThemeChildOfAppCompat" >
于 2014-09-02T01:00:09.260 回答