读书人

Android兑现自定义分享功能

发布时间: 2013-03-27 11:22:42 作者: rapoo

Android实现自定义分享功能

效果图如下:

需求指定应用分享至图片中的5个应用,手机上未安装显示为灰色,点击打开应用市场;安装了点击打开。

在手机上只安装了微信

Android兑现自定义分享功能 Android兑现自定义分享功能

主要代码如下:

/** * 查询所有支持分享的应用信息 *  * @param context * @return */private List<ResolveInfo> getShareApps(Context context) {List<ResolveInfo> mApps = new ArrayList<ResolveInfo>();Intent intent = new Intent(Intent.ACTION_SEND, null);intent.addCategory(Intent.CATEGORY_DEFAULT);intent.setType("text/plain");PackageManager pManager = context.getPackageManager();mApps = pManager.queryIntentActivities(intent, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT);return mApps;}/** * 得到应用列表 *  * @return */private List<AppInfo> getShareAppList() {List<AppInfo> shareAppInfos = new ArrayList<AppInfo>();PackageManager packageManager = context.getPackageManager();List<ResolveInfo> resolveInfos = getShareApps(context);if (null == resolveInfos) {return null;}else {for (ResolveInfo resolveInfo : resolveInfos) {AppInfo appInfo = new AppInfo();appInfo.setAppPkgName(resolveInfo.activityInfo.packageName);appInfo.setAppLauncherClassName(resolveInfo.activityInfo.name);appInfo.setAppName(resolveInfo.loadLabel(packageManager).toString());appInfo.setAppIcon(resolveInfo.loadIcon(packageManager));shareAppInfos.add(appInfo);}}return shareAppInfos;}



读书人网 >Android

热点推荐