android - 如何在 API 19 上设置默认浏览器?
问题描述
我使用下面的代码,它适用于除 API 19 之外的所有设备。在 api 19 中,使用此代码没有设置默认浏览器。请帮助我...在此先感谢
PackageManager packageManager = getActivity().getPackageManager();
ComponentName componentName = new ComponentName(mActivity, FakeActivity.class);
packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
runDefaultApp();
packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
private void runDefaultApp() {
Intent selector = new Intent(Intent.ACTION_VIEW);
selector.setData(Uri.parse("http://"));
startActivity(selector);
}
Android 清单 FakeActivity:
<activity
android:name=".FakeActivity"
android:enabled="false">
<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" />
<data android:scheme="https" />
</intent-filter>
</activity>
解决方案
推荐阅读
- solr - 如何在 solr fl 查询中转义特殊字符
- string - 存储在字符串切片中时,char 占用多少字节?
- angular - 如何验证在另一个formGroup中声明的formGroup中的输入
- python - 对于 nlp,是否有任何带有发音字母的文本语料库?
- python - 使用 asyncio.wait_for 和 asyncio.Semaphore 时如何正确捕获 concurrent.futures._base.TimeoutError?
- python-3.x - sqlalchemy 如何将数据库中的每一行视为一个列表并遍历每个列表?
- c# - 遍历具有另一个列表的列表,该列表具有另一个列表等
- c++ - CMake 的 VS_PACKAGE_REFERENCES 未添加对 VS2017 项目的引用
- postgresql - 在 select 语句中从字符串中删除某些字符
- python - Python vs Shell:大文件操作的性能