近來,碰到一個問題,需要在ionicAPP中打開第三方APP
然后,就找資料,發現了個比較好的解決方案
可以參考:https://blog.csdn.net/a727911438/article/details/80669065?utm_source=blogkpcl8
也可以參考下文
使用這個功能需要准備一些插件
ionic cordova plugin add cordova-plugin-appavailability npm install --save @ionic-native/app-availability ionic cordova plugin add cordova-plugin-inappbrowser npm install --save @ionic-native/in-app-browser
然后,還要在app.modules.ts中導入這兩個包
import { InAppBrowser } from '@ionic-native/in-app-browser';
import { AppAvailability } from '@ionic-native/app-availability';
providers: [
InAppBrowser, //添加
AppAvailability, //添加
]
在你需要使用的頁面的對應的ts中
constructor( private iab: InAppBrowser, private appAvailability: AppAvailability, private platform: Platform, ) { } turnApp(){ var app = ''; if (this.platform.is('ios')) { app = 'mqq://'; /* QQ的Scheme URL */ } else if (this.platform.is('android')) { app = 'com.tencent.mobileqq'; /* QQ的安卓包名 */ } this.appAvailability.check(app) /* 檢測QQ是否已安裝 */ .then( (yes: boolean) => { this.iab.create('mqqwpa://im/chat?chat_type=wpa&uin=(你要打開的對應的QQ)', '_system'); /* 打開QQ */
/*若是想要打開其他APP,則使用this.iab.create('Scheme URL','_system')*/
}, (no: boolean) => { /* 未安裝,提示處理 */ } ); }
/*這里是以打開指定某個QQ聯系人的聊天框為例*/
在解決這個問題的時候,找到一些關於常見APP的Scheme URL和它們在安卓端的包名的資料
Scheme URL:https://www.jianshu.com/p/61bfdc79ddc9
android包名:https://www.jianshu.com/p/cfb7f212a5a2
轉載請附上此鏈接,謝謝!
