0

我正在尝试构建我的应用程序的两个不同版本。免费版和收费版。通过网络搜索,我看到推荐的方法是使用库。所以我通过打开项目属性并勾选“Is Library”选项并创建一个单独的应用程序项目,将我的项目变成了一个库项目。我还在应用程序项目的“属性>>项目引用”页面中选择了库项目作为参考。

应用程序项目不包含任何活动。我正在尝试打开库项目中定义的主要活动作为我的应用程序项目的主要活动。我知道我必须在库项目中的应用程序清单中声明活动。

这是我的应用程序项目的清单文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.emret.myapplication.free"
    android:versionCode="1"
    android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16" />

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

这是我的库项目中的清单文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.emret.myapplication"
    android:versionCode="1"
    android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="Resimler ve Sesler" 
        android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
</manifest>

运行应用程序项目后立即引发以下异常:12-17 14:05:25.249: E/AndroidRuntime(1027): Caused by: java.lang.ClassNotFoundException: com.emret.myapplication.MainActivity

我错过了什么?

4

1 回答 1

2

您的库项目似乎没有导出到 APK 文件中。上次我自己遇到这种情况,原因是我通过“Properties -> Java Build Path -> Projects”添加了库项目。

一旦我将它从 Java 构建路径中删除并通过“属性 - > Android - > 添加...”添加了一个 Android 库,情况就得到了纠正

于 2012-12-17T12:42:50.933 回答