Android 调用系统浏览器 出现activitynotfoundexception 解决办法

Android 调用系统浏览器 出现activitynotfoundexception 解决办法



         //正常调用系统默认浏览器
         Intent intent= new Intent();        
         intent.setAction("android.intent.action.VIEW");     
         Uri content_url = Uri.parse(url);
    	 intent.setData(content_url);
         intent.setComponent(new ComponentName("com.android.browser", "com.android.browser.BrowserActivity"));
         startActivity(intent);		
         
        //在某些情况下你可能想要使用的浏览器而不是让用户选择了一个,		
        //这是我如何避免由不同的软件包的名称的activitynotfoundexception
		Intent browserIntent = new Intent(Intent.ACTION_VIEW);
		PackageManager packageManager = this.getPackageManager();
		Uri uri = Uri.parse(url);
		browserIntent.setDataAndType(uri, "text/html");
		List
    
    
     
      list = packageManager.queryIntentActivities(browserIntent, 0);
		for (ResolveInfo resolveInfo : list) {
		    String activityName = resolveInfo.activityInfo.name;
		    if (activityName.contains("BrowserActivity")) {
		        browserIntent =
		                packageManager.getLaunchIntentForPackage(resolveInfo.activityInfo.packageName);
		        ComponentName comp =
		                new ComponentName(resolveInfo.activityInfo.packageName, resolveInfo.activityInfo.name);
		        browserIntent.setAction(Intent.ACTION_VIEW);
		        browserIntent.addCategory(Intent.CATEGORY_BROWSABLE);
		        browserIntent.setComponent(comp);
		        browserIntent.setData(uri);
		    }
		}
		startActivity(browserIntent);

    
    


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值