1

以下代码来自具有库、试用版和完整应用程序的 Android 应用程序。在项目属性中,将库设置为库,在试用/完整版中引用库。但是,我似乎在命名包或 android:name(s) 时遗漏了一些东西:

如果我尝试运行完整的应用程序,该应用程序会在移动设备上停止并显示以下消息:

E/AndroidRuntime(28658): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{at.prm.privatecalls/at.prm.privatecalls.library.SettingsActivity}: java.lang.ClassNotFoundException: Didn't find class "at.prm.privatecalls.library.SettingsActivity" on path: /data/app/at.prm.privatecalls-1.apk

lib清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="at.prm.privatecalls.library"
  android:versionCode="1"
  android:versionName="@string/versionname" >

<uses-sdk android:minSdkVersion="11" android:targetSdkVersion="17" />

<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="SettingsActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    ...
</application>

应用清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="at.prm.privatecalls"
  android:versionCode="1"
  android:versionName="@string/versionname" >

<uses-sdk android:minSdkVersion="11" android:targetSdkVersion="17" />

<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity 
        android:name="at.prm.privatecalls.library.SettingsActivity" 
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    ...
</application>
4

1 回答 1

0

我从一个新的应用程序开始,创建了库和两个完整和试用的项目,然后复制了代码。有效,但是,我不知道错误的原因。

于 2013-01-26T15:57:29.600 回答