在我的离子应用程序中,我需要检查id facebook和Twitter应用程序是否安装在设备上。为此,我安装了AppAvailability并遵循指南:
let twitter = '';
let facebook = '';
if (this.plt.is('ios')) {
twitter = 'twitter://';
facebook = 'fb://';
} else if (this.plt.is('android')) {
twitter = 'com.twitter.android';
facebook = 'com.facebook.katana';
}
this.appAvailability.check(twitter)
.then(
(yes: boolean) => this.isTwitterAvailable = true,
(no: boolean) => this.isTwitterAvailable = false
);
this.appAvailability.check(facebook)
.then(
(yes: boolean) => this.isFacebookAvailable = true,
(no: boolean) => this.isFacebookAvailable = false
);
我两个人总是“假”。应用程序已安装。我尝试在离子开发应用程序内部以及在realIOS设备上使用真实应用程序。
答案 0 :(得分:2)
我在某个地方的另一个答案中看到了它,但它确保了plist的更新。这是原始答案,所以如果它有效,我不能因为知道答案而受到赞扬,但希望它有所帮助。
编辑plist(platforms / ios / appname / appname-Info.plist)文件 你的应用程序并添加Facebook。
<key>LSApplicationQueriesSchemes</key>
<array>
<string>facebook</string>
</array>
有人也注意到它可能只是
<string>fb</string>
在iOS11中。但还没有检查过。
答案 1 :(得分:2)
我在Indy-Jones的回答后做了什么:
<platform name="ios">
...
<edit-config file="*-Info.plist" mode="merge" target="LSApplicationQueriesSchemes">
<array>
<string>twitter</string>
<string>fb</string>
<string>instagram</string>
</array>
</edit-config>
....
</platform>
这将在plist文件中生成条目。 注意: