我正在研究Android上的课程,其中一项任务是制作一个名为“ MyBrowser”的程序,它们提供给我们,以便在另一个程序发送隐式意图的情况下出现在选择器中。并发现了这一点:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="andoid.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" />
</intent-filter>
第一个意图过滤器已经存在于文件中,我已经添加了第二个意图过滤器,但是它不起作用,我也不十分清楚为什么,隐式意图如下所示:
private void startImplicitActivation() {
Uri webpage = Uri.parse("http://www.google.com");
Intent baseIntent = new Intent (Intent.ACTION_VIEW, webpage);
Intent chooserIntent = Intent.createChooser(baseIntent, "Choose application");
startActivity(chooserIntent);
}
这是我尝试打开的唯一意图。
提前致谢。
好的,我决定从android浏览器复制并粘贴意图过滤器,然后它起作用了,后来我才开始删除随机的<intent-filter> ... ... / / 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:scheme="http" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句