给Android应用给予好评

2023-12-21 19:08
文章标签 android 应用 好评 给予

本文主要是介绍给Android应用给予好评,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



    Uri uri = Uri.parse("market://details?id="+"自己应用的包名");


Intent inten=new Intent(Intent.ACTION_VIEW, uri);

inten.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

inten.setPackage("com.tencent.android.qqdownloader");

startActivity(inten);


主流应用商店对应的包名如下:

com.qihoo.appstore  360手机助手

com.taobao.appcenter    淘宝手机助手

com.tencent.android.qqdownloader    应用宝

com.hiapk.marketpho 安卓市场     

cn.goapk.market 安智市场   






public class MarketUtils {

    /**

     * 获取已安装应用商店的包名列表

     * 

     * @param context

     * @return

     */

    public static ArrayList<String> queryInstalledMarketPkgs(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> filterInstalledPkgs(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);

            AppUtils.getAppContext().startActivity(intent);

        } catch (Exception e) {

            e.printStackTrace();

        }

    }


    Uri uri = Uri.parse("market://details?id="+"自己应用的包名");


Intent inten=new Intent(Intent.ACTION_VIEW, uri);

inten.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

inten.setPackage("com.tencent.android.qqdownloader");

startActivity(inten);


主流应用商店对应的包名如下:

com.qihoo.appstore  360手机助手

com.taobao.appcenter    淘宝手机助手

com.tencent.android.qqdownloader    应用宝

com.hiapk.marketpho 安卓市场     

cn.goapk.market 安智市场   






public class MarketUtils {

    /**

     * 获取已安装应用商店的包名列表

     * 

     * @param context

     * @return

     */

    public static ArrayList<String> queryInstalledMarketPkgs(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> filterInstalledPkgs(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);

            AppUtils.getAppContext().startActivity(intent);

        } catch (Exception e) {

            e.printStackTrace();

        }

    }


这篇关于给Android应用给予好评的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/521149

相关文章

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

Java MQTT实战应用

《JavaMQTT实战应用》本文详解MQTT协议,涵盖其发布/订阅机制、低功耗高效特性、三种服务质量等级(QoS0/1/2),以及客户端、代理、主题的核心概念,最后提供Linux部署教程、Sprin... 目录一、MQTT协议二、MQTT优点三、三种服务质量等级四、客户端、代理、主题1. 客户端(Clien

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹