Android 跳转应用市场评分
来源:互联网 发布:mac如何使用搜狗 编辑:程序博客网 时间:2024/05/16 08:03
在Android的App中,经常会见到这样的功能。从当前app跳转到一个应用商店且显示本软件详情的页面,让用户给自己的App进行评分,从而提高App的排名。下面介绍该功能的实现。
/*** * 跳转应用市场评分 * @author Lucasey */public class ScoreUtils { /** * 获取已安装应用商店的包名列表 * * @param context * @return */ public static ArrayList<String> InstalledAPPs(Context context) { ArrayList<String> pkgs = new ArrayList<String>(); if (context == null) return pkgs; Intent intent = new Intent(); intent.setAction("android.intent.action.MAIN"); intent.addCategory("android.intent.category.APP_MARKET"); PackageManager pm = context.getPackageManager(); List<ResolveInfo> infos = pm.queryIntentActivities(intent, 0); if (infos == null || infos.size() == 0) return pkgs; int size = infos.size(); for (int i = 0; i < size; i++) { String pkgName = ""; try { ActivityInfo activityInfo = infos.get(i).activityInfo; pkgName = activityInfo.packageName; } catch (Exception e) { e.printStackTrace(); } if (!TextUtils.isEmpty(pkgName)) pkgs.add(pkgName); } return pkgs; } /** * 过滤出已经安装的包名集合 * @param context * @param pkgs * 待过滤包名集合 * @return 已安装的包名集合 */ public static ArrayList<String> SelectedInstalledAPPs(Context context,ArrayList<String> pkgs) { ArrayList<String> empty = new ArrayList<String>(); if (context == null || pkgs == null || pkgs.size() == 0) return empty; PackageManager pm = context.getPackageManager(); List<PackageInfo> installedPkgs = pm.getInstalledPackages(0); int li = installedPkgs.size(); int lj = pkgs.size(); for (int j = 0; j < lj; j++) { for (int i = 0; i < li; i++) { String installPkg = ""; String checkPkg = pkgs.get(j); try { installPkg = installedPkgs.get(i).applicationInfo.packageName; } catch (Exception e) { e.printStackTrace(); } if (TextUtils.isEmpty(installPkg)) continue; if (installPkg.equals(checkPkg)) { empty.add(installPkg); break; } } } return empty; } /** * 跳转到app详情界面 * @param appPkg App的包名 * @param marketPkg * 应用商店包名 ,如果为""则由系统弹出应用商店列表供用户选择,否则调转到目标市场的应用详情界面,某些应用商店可能会失败 */ public static void launchAppDetail(String appPkg, String marketPkg) { try { if (TextUtils.isEmpty(appPkg)) return; Uri uri = Uri.parse("market://details?id=" + appPkg); Intent intent = new Intent(Intent.ACTION_VIEW, uri); if (!TextUtils.isEmpty(marketPkg)) intent.setPackage(marketPkg); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); MyUtils.getAppContext().startActivity(intent); } catch (Exception e) { e.printStackTrace(); } }}
0 0
- Android -- 跳转应用市场评分
- Android 跳转应用市场评分
- 跳转应用市场评分
- android应用跳转到市场评分功能
- Android跳转到应用市场进行评分
- android 点击跳转应用市场评分页面
- 跳转至应用市场评分
- 跳转应用市场 评分等
- Android 应用中跳转到应用市场评分
- android应用跳转至市场给软件评分功能
- android应用跳转至市场给软件评分功能
- android应用跳转至市场给软件评分功能
- Android应用跳转至市场给软件评分功能
- Android之应用市场评分
- Android跳转应用市场评分以及目前国内主要的市场包名
- Android 跳转应用市场
- 跳转市场评分
- 跳转应用市场中自己应用的页面进行评分
- request.getRequestDispatcher().forward() 和response.sendRedirect()区别
- C# 串口操作系列(3) -- 协议篇,二进制协议数据解析
- centos 7 中防火墙的关闭问题
- hibernate注解-属性级别注解
- 遗传算法求解函数最大值用例
- Android 跳转应用市场评分
- "rpm -qa" C 接口的实现过程
- 树与二叉树的转化
- 使用consul实现服务的注册和发现
- (OK)(OK) install_quagga-0.99.21mr2.2_on_android-x86_64_in_Fedora23
- 更轻量的 View Controllers
- spring + maven 属性注入和构造函数注入(1)
- 小昆哥—>博客第一篇
- 中国互联网大会上的APP质量主题分享