Ionic 5 / Capacitor:如何确定应用程序在浏览器中是 运行 还是编译为本机应用程序?
Ionic 5 / Capacitor: How to find out if app is running in browser or compiled as native app?
我只想知道,如果我的 Ionic 5 应用程序 运行 在浏览器中,或者在已编译应用程序的 Web 视图中。
平台 不工作:https://ionicframework.com/docs/angular/platform
它只是讲述了设备。但是当我 运行 它在 android 设备上的 chrome 中时,它 returns 与我 运行 它编译时相同的平台。
正在分析 URL 以检查 webview url 是否有效,但在使用电容器实时重新加载时无效。因为它与浏览器本地的 URL 相同。顺便说一下,分析 URL 感觉像是一个丑陋的解决方案。
获得这些简单而重要的信息真的有那么难吗,还是我错过了什么?
编辑:
平台输出
Chrome in Ubuntu with ionic serve: ["desktop"]
Chrome 在 Android 中:["android", "mobile", "mobileweb"]
Android 带电容器 livereload:["android", "phablet", "mobile", "mobileweb"]
Android 编译:["android", "phablet", "cordova", "capacitor", "mobile", "hybrid"]
勾选Capacitor.getPlatform()
如果 returns web 那么它是 运行 作为网站,如果 returns ios 或 android 那么它是本地的。
或者也可以勾选Capacitor.isNativePlatform()
.
我只想知道,如果我的 Ionic 5 应用程序 运行 在浏览器中,或者在已编译应用程序的 Web 视图中。
平台 不工作:https://ionicframework.com/docs/angular/platform
它只是讲述了设备。但是当我 运行 它在 android 设备上的 chrome 中时,它 returns 与我 运行 它编译时相同的平台。
正在分析 URL 以检查 webview url 是否有效,但在使用电容器实时重新加载时无效。因为它与浏览器本地的 URL 相同。顺便说一下,分析 URL 感觉像是一个丑陋的解决方案。
获得这些简单而重要的信息真的有那么难吗,还是我错过了什么?
编辑:
平台输出
Chrome in Ubuntu with ionic serve: ["desktop"]
Chrome 在 Android 中:["android", "mobile", "mobileweb"]
Android 带电容器 livereload:["android", "phablet", "mobile", "mobileweb"]
Android 编译:["android", "phablet", "cordova", "capacitor", "mobile", "hybrid"]
勾选Capacitor.getPlatform()
如果 returns web 那么它是 运行 作为网站,如果 returns ios 或 android 那么它是本地的。
或者也可以勾选Capacitor.isNativePlatform()
.