PHP   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用PHP / Javascript检测应用内浏览器(WebView)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我开发了@L_197_0@iOS和 Android应用程序,它使用应用内浏览器(Webview)从我的网络服务器访问@L_197_0@HTML文件.

我不希望用户无需使用该应用即可访问此文件.是否有可能检测到,如果用户正在使用该应用程序访问该文件,或直接通过此智能手机/平板电脑/计算机上的浏览器?我认为使用PHP解决方案要好得多,因为Javascript可以关闭.至少Google Analytics(分析)可以区分Safari和Safari(应用内).它应该适用于所有版本的iOS和Android.

谢谢你的帮助.

经过多次尝试,我终于为我找到了@L_197_0@工作的解决方案!

iOS版:
您可以使用用户代理检测Safari和应用内浏览器之间的区别.可能有@L_197_0@更好的解决方案,但它有效.

// Safari (in-app)
if ((strpos($_SERVER['http_user_ageNT'],'Mobile/') !== falsE) && (strpos($_SERVER['http_user_ageNT'],'Safari/') == falsE) {
    echo 'Safari (in-app)';
}

安卓:
来自应用程序的程序包@L_197_21@存储在PHP变量$_SERVER [‘http_X_requESTED_WITH’]中.

// Android (in-app)
if($_SERVER['http_X_requESTED_WITH'] == "com.company.app") {
    echo 'Android (in-app)';
}

正如蒂姆·范·埃尔斯洛(Tim van Elsloo)已经注意到http头可以被伪造,这并不是绝对安全的.

@H_616_22@
我不确定Android,但是当您使用iOS SDK的UIWebView时,它将作为用户代理(YourApp / 1.0)的一部分发送您的应用程序的@L_197_21@和版本.

然后,您可以使用PHP来检查您的应用内Webview是否被使用:

if (strpos($_SERVER['http_user_ageNT'],'YourApp/') !== falsE)

我认为Android也做了类似的事情.

大佬总结

以上是大佬教程为你收集整理的使用PHP / Javascript检测应用内浏览器(WebView)全部内容,希望文章能够帮你解决使用PHP / Javascript检测应用内浏览器(WebView)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。