如何检查设备上是否安装了 WhatsApp?
How to check if WhatsApp is installed on device?
Linking.openURL(`whatsapp://send?phone=${phoneNumber}`);
上面的代码将导航到 WhatsApp 但是我想知道是否可以在尝试 openURL
之前检查 WhatsApp 是否存在
可以使用 PackageManager 检查。只需遍历已安装的软件包并将其名称与 whatsapp 软件包名称进行比较。
PackageManager packageManager = getApplicationContext().getPackageManager();
for (PackageInfo packageInfo : packageManager.getInstalledPackages(0)) {
if (packageInfo.packageName.equals(“com.whatsapp")) {
return true;
}
}
To start the corresponding activity for a link (web URL, email, contact etc.), call
Linking.openURL(url).catch(err => console.error('An error occurred', err));
If you want to check if any installed app can handle a given URL beforehand you can call
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
块,您可以在那里进行计算。
Linking.openURL(`whatsapp://send?phone=${phoneNumber}`);
上面的代码将导航到 WhatsApp 但是我想知道是否可以在尝试 openURL
可以使用 PackageManager 检查。只需遍历已安装的软件包并将其名称与 whatsapp 软件包名称进行比较。
PackageManager packageManager = getApplicationContext().getPackageManager();
for (PackageInfo packageInfo : packageManager.getInstalledPackages(0)) {
if (packageInfo.packageName.equals(“com.whatsapp")) {
return true;
}
}
To start the corresponding activity for a link (web URL, email, contact etc.), call
Linking.openURL(url).catch(err => console.error('An error occurred', err));
If you want to check if any installed app can handle a given URL beforehand you can call
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
块,您可以在那里进行计算。