我试图直接在Ionic的Instagram应用上打开一个perfil。
appAvailability检测到Instagram可用,但是当我尝试打开时:
window.open("instagram://user?username=" + username, "_blank", "location=yes");
app(离子)并不识别" instagram://"并尝试在浏览器或inappbrowser(插件)中打开。
我也试过了:
window.open("instagram://user?username=" + username, "_blank", "location=yes");
和
$window.open("instagram://user?username=" + username, "_system", "location=no");
没有任何作用。我做错了什么?
由于
答案 0 :(得分:3)
这对我在iPhone上有用,请使用以下步骤:
cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git
<a class="item" href="#" onclick="window.open('instagram://user?username=andrewoodleyjr', '_system'); return false;">
Instagram
</a>
我不相信Android有像iOS这样的钩子,因此instagram://将无效。
答案 1 :(得分:1)
Android具有instagram,twitter和facebook的挂钩。您必须先安装应用才能正常工作。
window.open(link,'_system');
帖子的模式是
instagram://media?id=your-post-id
fb://facewebmodal/f?href=your-post-link
twitter://status?id=your-post-id
答案 2 :(得分:0)
19-06-2021 / 离子 / 角度
这对我有用。我使用过 App Availability 和 In App Browser 插件。和 我用过这个article。
async goToInstagram(instagram:string): Promise<void> {
let app: string;
if (this.platform.is('ios')) {
app = 'instagram://';
} else if (this.platform.is('android')) {
app = 'com.instagram.android';
}
const isAppAvailable: boolean = await this.appAvailability.check(app);
isAppAvailable?
this.inAppBrowser.create(`instagram://user?username=${instagram}`, '_system') :
this.inAppBrowser.create(`https://www.instagram.com/${instagram}`, '_system');
}