【发布时间】:2019-08-03 23:35:43
【问题描述】:
【问题讨论】:
-
请分享代码 sn-p 以更好地了解您的问题
标签: angular typescript ionic-framework ionic3 ionic-native
【问题讨论】:
标签: angular typescript ionic-framework ionic3 ionic-native
您可能面临应用程序的离子版本与您在应用程序中安装的插件版本不匹配的问题。 在 Ionic V3 中,您无需从 '../ngx';
导入Ionic V3 和 V4 有不同的插件 url
Ionic v3 应用可用性
ionic cordova plugin add cordova-plugin-appavailability
npm install --save @ionic-native/app-availability@4
对于 Ionic V4 应用的可用性
ionic cordova plugin add cordova-plugin-appavailability
npm install @ionic-native/app-availability
两个版本的 npm install cmd 不同
试试这个步骤
【讨论】:
我遇到了这个错误:使用 Ionic 5/ Capacitor 应用程序。
core.js:6479 ERROR 错误:未捕获(承诺中):[对象字符串] 在 resolvePromise (zone.js:1255) 在 zone.js:1162 被拒绝 (tslib.es6.js:74) 在 ZoneDelegate.invoke (zone.js:400) 在 Object.onInvoke (core.js:28705) 在 ZoneDelegate.invoke (zone.js:399) 在 Zone.run (zone.js:160) 在 zone.js:1318 在 ZoneDelegate.invokeTask (zone.js:434) 在 Object.onInvokeTask (core.js:28692) defaultErrorLogger@core.js:6479
我已经使用了这段代码,现在可以正常工作了。我的问题是我的设备上没有安装 Instagram 应用程序。所以它抛出一个异常。我是这样处理的:
async goToInstagram(): Promise<void> {
let app: string;
if (this.platform.is('ios')) {
app = 'instagram://';
} else if (this.platform.is('android')) {
app = 'com.instagram.android';
}
try {
const isAppAvailable = await this.appAvailability.check(app);
isAppAvailable
? this.inAppBrowser.create(`instagram://user?username=${this.item.instagram}`, '_system')
: this.inAppBrowser.create(`https://www.instagram.com/${this.item.instagram}`, '_system');
} catch (err) {
this.inAppBrowser.create(`https://www.instagram.com/${this.item.instagram}`, '_system');
}
}
【讨论】: