我将MainActivity类重命名为DataActivity,并添加了一个新的主活动类,其中IntelliJ IDEA是主要活动。我将AndroidManifest.xml文件更改为以下内容:
<application android:label="@string/app_name" android:icon="@drawable/icon">
<activity android:name=".DataActivity"
android:screenOrientation="portrait">
</activity>
<activity android:name=".MainActivity" android:screenOrientation="portrait"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
我从手机上卸载了应用程序并删除了编译器缓存。在安装时,我得到以下异常:
启动应用程序: com.example.DataTest / com.example.DataTest.DataActivity。
DEVICE SHELL COMMAND:我开始了--n “com.example.DataTest / com.example.DataTest.DataActivity” -a android.intent.action.MAIN -c android.intent.category.LAUNCHER java.lang.SecurityException:Permission Denial:start Intent { act = android.intent.action.MAIN cat = [android.intent.category.LAUNCHER] flg = 0x10000000 cmp = com.example.DataTest / .DataActivity} from null(pid = 5882,uid = 2000)需要null
我还应该做些什么?
答案 0 :(得分:2)
This post帮我看了哪里。在评论中,zeh声称SDK保留了对原始活动的反对意见。我检查了启动配置,在我的IDEA中,它已从“启动默认活动”更改为“启动活动:DataActivity”。 它现在可以正常工作。
答案 1 :(得分:0)
将其更改为包含新主要活动的意图过滤器:
<activity android:name=".DataActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".MainActivity" android:screenOrientation="portrait"
android:label="@string/app_name">
</activity>
并删除“MainActivity”(如果它不再存在)。即删除它:
<activity android:name=".MainActivity" android:screenOrientation="portrait"
android:label="@string/app_name">
</activity>