【发布时间】:2014-03-14 04:58:05
【问题描述】:
我目前有一个我已经构建的 Android 应用,我的公司计划实现它的几个不同的迭代 - 本质上是相同的应用,但具有修改的资源。因此,我没有创建完全独立的项目,而是将核心项目用作库,并为变体子应用程序创建了几个 shell 项目。这就是我感到困惑的地方。当我启动我的子应用程序时,Eclipse 会将库版本和子版本都加载到设备上,它们都是功能齐全的应用程序。
这是库的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.alot.rssviewer"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="@drawable/launcher_96x96"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.alot.rssviewer.activities.AlotRSSMainActivity"
android:label="@string/app_name" >
<meta-data
android:name="android.app.default_searchable"
android:value="com.alot.rssviewer.activities.AlotRSSSearchResultsActivity" />
</activity>
<!-- Search results activity -->
<activity
android:name="com.alot.rssviewer.activities.AlotRSSSearchResultsActivity"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
<activity
android:name="com.alot.rssviewer.activities.AlotRSSWebViewActivity"
android:label="@string/title_activity_web_view"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
</activity>
<activity
android:name="com.alot.rssviewer.activities.AlotRSSFeedSettingsActivity"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
</activity>
<activity android:name="com.mopub.mobileads.MoPubActivity" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidActivity" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidBrowser" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidVideoPlayerActivity" android:configChanges="keyboardHidden|orientation"/>
<receiver android:name="com.track.conversion.TrackingReceiver" android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
</application>
这是我的子项目的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.alot.rssviewer.worldnews"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="@drawable/launcher_96x96"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.alot.rssviewer.activities.AlotRSSMainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.app.default_searchable"
android:value="com.alot.rssviewer.activities.AlotRSSSearchResultsActivity" />
</activity>
<!-- Search results activity -->
<activity
android:name="com.alot.rssviewer.activities.AlotRSSSearchResultsActivity"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
<activity
android:name="com.alot.rssviewer.activities.AlotRSSWebViewActivity"
android:label="@string/title_activity_web_view"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
</activity>
<activity
android:name="com.alot.rssviewer.activities.AlotRSSFeedSettingsActivity"
android:parentActivityName="com.alot.rssviewer.activities.AlotRSSMainActivity" >
</activity>
<activity android:name="com.mopub.mobileads.MoPubActivity" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidActivity" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidBrowser" android:configChanges="keyboardHidden|orientation"/>
<activity android:name="com.mopub.mobileads.MraidVideoPlayerActivity" android:configChanges="keyboardHidden|orientation"/>
<receiver android:name="com.track.conversion.TrackingReceiver" android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
</application>
</manifest>
我真的很困惑我做错了什么。我读到您应该在两个应用程序之间同步所有依赖项,并且我还确保我只在一个活动中具有启动器意图,但我有点不知所措。
感谢大家的帮助。
【问题讨论】:
-
你在设置里把第一个标记为库项目了吗?
-
是的,我确实做到了。这绝对是一个图书馆。