您的位置:首页 > 移动开发

【Android】Share via whatsapp

2016-04-01 15:34 567 查看
@Subscribe(threadMode = ThreadMode.MainThread)
public void onEventMainThread(final StartShareViaWhatsappEvent event) {

String packageName = ShareModel.getPackageName("whatsapp");

if (TextUtils.isEmpty(packageName)) return;

try {
// check if installed already
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, ShareModel.SHARE_URL);

// See if official Facebook app is found
List<ResolveInfo> matches = getPackageManager().queryIntentActivities(intent, 0);
for (ResolveInfo info : matches)
if (info.activityInfo.packageName.toLowerCase().startsWith(packageName)) {
intent.setPackage(info.activityInfo.packageName);
this.startActivityForResult(intent, REQUEST_CODE_SHARE_VIA_WHATSAPP);
AnalyticsUtil.logEvent(AnalyticsConstDefine.buy_page_share_ok);
}
} catch (Exception e) {
// app not found
Uri marketDirectUri = Uri.parse("market://details?id=" + packageName);
Uri httpsUri = Uri.parse("https://play.google.com/store/apps/details?id=" + packageName);

//use a try/catch block here because an Exception will be thrown if the Play Store is not installed on the target device.
try {
startActivityForResult(new Intent(Intent.ACTION_VIEW, marketDirectUri), REQUEST_CODE_SHARE_VIA_WHATSAPP);
} catch (android.content.ActivityNotFoundException anfe) {
startActivityForResult(new Intent(Intent.ACTION_VIEW, httpsUri), REQUEST_CODE_SHARE_VIA_WHATSAPP);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android