桌面隐藏 com.android.dialer 后 ,intent 启动概率报错
通过在 AndroidManifest.xml 中 去除
<category android:name="android.intent.category.DEFAULT"/>
- <category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.BROWSABLE"/>
达到 在桌面隐藏的效果 ,然后通过以下代码启动:
private String packageName = "com.android.dialer";
private String className = "com.android.dialer.main.impl.MainActivity";
Intent intent=new Intent();
intent.setComponent(new ComponentName(packageName, className));
mContext.startActivity(intent);
测试反馈会概率性报错 : log信息如下 :
ATAL EXCEPTION: main
09-26 13:41:25.236 22041 22041 E AndroidRuntime: Process: com.android.dialer, PID: 22041
09-26 13:41:25.236 22041 22041 E AndroidRuntime: java.lang.RuntimeException: java.lang.IllegalStateException: Launcher activity not found for package com.android.dialer
09-26 13:41:25.236 22041 22041 E AndroidRuntime: at com.android.dialer.common.concurrent.-$$Lambda$DefaultDialerExecutorFactory$BaseTaskBuilder$D6vDBb1osF1Sb57-3h9xIG737pg.onFailure(lambda:1)
09-26 13:41:25.236 22041 22041 E AndroidRuntime: at com.android.dialer.common.concurrent.DefaultDialerExecutorFactory$NonUiDialerExecutor.lambda$run$4$DefaultDialerExecutorFactory$NonUiDialerExecutor(DefaultDialerExecutorFactory.java:1)
09-26 13:41:25.236 22041 22041 E AndroidRuntime: at com.android.dialer.common.concurrent.-$$Lambda$DefaultDialerExecutorFactory$NonUiDialerExecutor$rW7kpUk-V_nmgBt99bX4n6sSDTQ.run(Unknown Source:4)
请问去掉 <category android:name="android.intent.category.LAUNCHER"/> 不能用intent 启动吗?
请问去掉 <category android:name="android.intent.category.LAUNCHER"/> 不能用intent 启动吗?
基础白学了嗷。
启动应用的两种方式,显示意图和隐式意图。