我试图在不同的风格中使用相同的activity
名称,并为每种风格安装正确的名称。FLAVOR:从Android Studio运行失败 - 从设备作品运行
的build.gradle:
android {
....
buildscript {
productFlavors {
flavor1 {
applicationId "com.example.MyApp.flavor1"
}
flavor2 {
applicationId "com.example.MyApp.flavor2"
}
flavor3 {
applicationId "com.example.MyApp.flavor3"
}
}
}
}
的AndroidManifest.xml:
<activity
android:name="${applicationId}.LaunchActivity"
android:noHistory="false" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="*"
android:path="*"
android:scheme="@string/app_scheme_name" />
</intent-filter>
...
<\activity>
每flavorX.java看起来是这样的:
package com.example.MyApp.flavorX;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
import com.example.MyApp.MainActivity;
public class LaunchActivity extends MainActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
String flavor = "~~~ flavorX ~~~~";
Log.i("flavor", flavor);
super.onCreate(savedInstanceState);
Toast.makeText(this, flavor,Toast.LENGTH_SHORT).show();
}
}
现在...
对于我运行的每种口味(使用它的build variant
)按A.S. “绿色播放按钮”这些事情发生:
1. build + compile成功结束。
2. Run
视图选项卡上我得到这样的信息:
Installing com.example.MyApp.flavorX
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.example.MyApp.flavorX"
pkg: /data/local/tmp/com.example.MyApp.flavorX
Success
Could not identify launch activity: Default Activity not found
3.该应用正在安装使用正确的图标和名称的设备上。
4.当按下刚刚安装的图标(=从设备运行) - 一切正常和应用程序的行为就像要求 - 与它自己的味道每个安装。
这对于调试和流畅的开发来说很糟糕...
我应该怎么做才能使每种口味的变体都通过A.S?
谢谢:)
我已经在清单上有这些行,我现在将它们添加。 有什么新建议? – RedHat