Unity 调用打开默认浏览器(安卓)

欢迎加入Unity业内qq交流群:956187480

qq扫描二维码加群


之前的项目,临时接到一个需求需要调用本地浏览器。好在之前的unity-Android交互框架已经搭建完善,所以这个功能上手容易。unity-androoid交互不懂得 可以看之前的博客记录。

 

安卓端:

在Android中可以调用自带的浏览器,或者指定一个浏览器来打开一个链接。只需要传入一个uri地址。

1.启动android默认浏览器

在Android程序中我们可以通过发送隐式Intent来启动系统默认的浏览器。如果手机本身安装了多个浏览器而又没有设置默认浏览器的话,系统将让用户选择使用哪个浏览器来打开连接。

参数是unity端传过来的url地址,return的是给到unity的日志

public String OpenBrowser(String url){

        Uri uri = Uri.parse(url);
        Intent intent = new Intent(Intent.ACTION_VIEW, uri);
        startActivity(intent);
        return "打开浏览器成功";
    }

2.启动指定浏览器打开

在Android程序中我们可以通过发送显式Intent来启动指定的浏览器。例如我手机安装了多个浏览器:QQ浏览器、chrome浏览器、uc浏览器。我可以指定用某个浏览器打开这个链接。例如打开QQ浏览器如下代码,用uc浏览器打开只需要把打开qq浏览器那行代码注释掉,然后打开uc浏览器那行代码取消注视就行。

 public String OpenBrowser(String url){

        Uri uri = Uri.parse(url);
        Intent intent = new Intent(Intent.ACTION_VIEW,uri);
        //intent.setClassName("com.UCMobile","com.uc.browser.InnerUCMobile");//打开UC浏览器
        intent.setClassName("com.tencent.mtt","com.tencent.mtt.MainActivity");//打开QQ浏览器
        startActivity(intent);

        return "打开浏览器成功";
    }

Unity端:

unity端就比较简单了,直接上代码。

public AndroidJavaObject jo;

-----------------------------------------------------
#if UNITY_ANDROID
        AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
#elif UNITY_IOS
        Debug.Log("***********当前为ios环境************");     
#endif


-----------------------------------------------------
 public void OpenBrowser(string url)
    {
        var tips = jo.Call<string>("OpenBrowser", url);
        Debug.Log(tips);
        Debug.Log("打开浏览器:"+ url);
    }

欢迎加入Unity业内qq交流群:956187480

qq扫描二维码加群


 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

幻世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值