Android为两种不同的产品口味分配了两种不同的发射器活动 [英] Android gradle two different launcher activities for two different product flavors
问题描述
productFlavors {
paid {
applicationIdcom.paid.app
免费{
applicationIdcom.free.app
}
}
和支付
flavor我需要一个不同的启动器活动,与 main $ c
$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $主要/ AndroidManifest.xml
< activity
android:name =。MainActivity
android:label =@ string / app_name>
< intent-filter>
< / intent-filter>
< / activity>
paid / AndroidManifest.xml
< activity
android:name =。SecondMainActivity
android:label =@ string / app_name >
< intent-filter>
< category android:name =android.intent.category.LAUNCHER/>
< / intent-filter>
< / activity>
当我开始在付费
构建变体,它总是安装两个应用程序,即免费和付费,但具有相同的应用程序名称。而当我卸载任何一个,这两个应用程序被卸载。不仅应该支付
变种建立一个付费应用程序和免费
变种建立一个免费的应用程序?以下是我的工作环境
依赖关系{
classpath'com.android.tools.build:gradle:1.3.0 '
}
Android Studio 1.4 beta 2
您没有安装2个应用程序。
在您的Manifest中使用付费风格,您将合并2个活动与LAUNCHER类别。
< intent-filter>
< category android:name =android.intent.category.LAUNCHER/>
< / intent-filter>
通过这种方式,您将拥有2个图标来启动您的应用程序。一个用于 MainActivity
,一个用于 SecondActivity
。
如果您想为每种口味提供不同的活动,则必须在每种口味中使用相同的活动。
app / src / free / java /..../ MainActivity
app / src / paid / java / .... / MainActivity
This is my case
productFlavors {
paid {
applicationId "com.paid.app"
}
free {
applicationId "com.free.app"
}
}
and in paid
flavor I need a different launcher activity in comparison to main
or free
as done below
main/AndroidManifest.xml
<activity
android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
paid/AndroidManifest.xml
<activity
android:name=".SecondMainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
And when I begin to install app in paid
build variants, it always install two apps i.e. free and paid but with same app name. And when I uninstall any one , both the app gets uninstalled. Shouldn't only paid
variant build a paid app and free
variant build a free app? Following is my working environment
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
}
Android Studio 1.4 beta 2
You are not installing 2 apps.
Using the paid flavor in your Manifest you will merge 2 Activities with the LAUNCHER category.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
In this way you will have 2 icons to launch your app. One for the MainActivity
,one for the SecondActivity
.
If you want a different Activity for each flavor,you have to use the same Activity in each flavor.
app/src/free/java/..../MainActivity
app/src/paid/java/..../MainActivity
这篇关于Android为两种不同的产品口味分配了两种不同的发射器活动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!