Linking.openURL(`whatsapp://send?phone=${phoneNumber}`);
以上代码将导航至WhatsApp,但我想知道是否有可能在尝试openURL
答案 0 :(得分:6)
要启动链接的相应活动(Web URL,电子邮件,联系人等),请致电
Linking.openURL(url).catch(err => console.error('An error occurred', err));
如果要检查是否已安装的应用程序可以事先处理给定的URL,可以致电
Linking.canOpenURL(url).then(supported => { if (!supported) { console.log('Can\'t handle url: ' + url); } else { return Linking.openURL(url); } }).catch(err => console.error('An error occurred', err));
我假设,如果未安装WhatsApp,则将调用!supported
块,您可以在那里进行计算。
答案 1 :(得分:1)
可以使用PackageManager进行检查。只需遍历已安装的软件包并将其名称与whatsapp软件包名称进行比较即可。
PackageManager packageManager = getApplicationContext().getPackageManager();
for (PackageInfo packageInfo : packageManager.getInstalledPackages(0)) {
if (packageInfo.packageName.equals(“com.whatsapp")) {
return true;
}
}