我只想知道我的 Ionic 5 应用程序是否在浏览器中运行,或者在已编译应用程序的 Web 视图中运行。
平台不起作用:https://ionicframework.com/docs/angular/platform
它只是讲述了该设备。但是当我在 Android 设备上的 chrome 中运行它时,它返回与我编译运行它时相同的平台。
分析 URL 以检查 webview url 是否有效,但在使用电容器实时重新加载时无效。因为它与浏览器中本地的 URL 相同。顺便说一句,分析 URL 感觉像是一个丑陋的解决方案。
获取这些简单而重要的信息真的那么难吗,还是我只是错过了一些东西?
编辑:
平台输出
Ubuntu 中的 Chrome 和 ionic 服务:[“桌面”]
Android 中的 Chrome:["android", "mobile", "mobileweb"]
带电容器 livereload 的 Android:["android", "phablet", "mobile", "mobileweb"]
Android编译:[“android”,“phablet”,“cordova”,“capacitor”,“mobile”,“hybrid”]
检查
Capacitor.getPlatform()
如果返回 web 那么它作为网站运行,如果返回 ios 或 android 那么它是原生的。
或者也可以检查
Capacitor.isNativePlatform()
。
首创进口电容铁芯
import { Capacitor } from '@capacitor/core';
然后使用以下代码检查平台
if (Capacitor.getPlatform() === 'ios') {
// do something
}else{
//this this console log the platform if its not IOS
console.log('PLATFORM IS', Capacitor.getPlatform())
}