(原创)安卓跳转应用市场APP详情页的方式

前言

最近在做一个需求,需要从自己APP进入到系统的应用市场
方便用户在应用市场给自己的APP打分
于是查阅了一些资料,下面说一下实现方法

实现方案

一般来说,最简单的方案就是这样:

 val uri = Uri.parse("market://details?id=" + 你自己应用的包名)
 val intent=Intent(Intent.ACTION_VIEW, uri)
 if (intent.resolveActivity(this) != null) {
      startActivity(intent)
 }else{
      showToast(mActivity, "您的手机暂无应用市场,请下载后重试,感谢您的支持~")
 }

其中resolveActivity用来判断是否可以正确拉起应用市场,不能的话就提示用户
经过试验,发现的确是可行的,但是也发现了一些问题:
1:如果手机安装了多个应用市场,会弹框提示你选择具体的应用市场
2:无法指定具体的应用市场页面,比如我想直接进打分页面,这方面是系统处理,不可控制
针对第二个问题,暂时没想到好的解决办法
第一个的话,可以通过新增方法来指定对应的应用市场

指定应用市场

我们可以先利用Build.BRAND这个属性获取我们手机的品牌
然后指定对应品牌的应用市场
比如如果你获取的是华为的品牌
就可以指定华为的应用市场
获取品牌的方法可以这样处理:

  private fun getBrandType(): String {
    val brandType = when (Build.BRAND.uppercase(Locale.getDefault())) {
      "HUAWEI" -> "HUAWEI"
      "XIAOMI" -> "XIAOMI"
      "REDMI" -> "REDMI"
      "HONOR" -> "HONOR"
      "OPPO" -> "OPPO"
      "VIVO" -> "VIVO"
      else -> {
        "OTHER"
      }
    }
    return brandType
  }

指定华为应用市场,只需要对intent多加这一行:

intent.setPackage("com.huawei.appmarket")

这样就可以直接跳到华为应用市场了
最后,附上不同品牌机型的应用市场的包名:

目前国内主流的应用市场有:

腾讯应用宝:com.tencent.android.qqdownloader 

360手机助手:com.qihoo.appstore 

百度手机助手:com.baidu.appsearch 

小米应用商店:com.xiaomi.market 

华为应用商店:com.huawei.appmarket 

QQ手机管家:com.tencent.qqpimsecure 

OPPO应用商店:com.oppo.market 

中兴应用商店:zte.com.market 

联想应用商店:com.lenovo.leos.appstore 

可以根据公司投放的渠道使用相应应用市场的包名~
  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Android标题换行,可以使用以下方法: 1. 在标题中添加换行符号“\n”,例如: ```java setTitle("第一行标题\n第二行标题"); ``` 2. 使用自定义布局来设置标题,例如: ```java getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setCustomView(R.layout.custom_actionbar); TextView title = findViewById(R.id.action_bar_title); title.setText("长标题需要换行\n第二行"); ``` 对于Android dialog标题换行,可以使用以下方法: 1. 在对话框构建器中设置标题,例如: ```java AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("长标题需要换行\n第二行"); ``` 2. 使用自定义布局来设置对话框标题,例如: ```java AlertDialog.Builder builder = new AlertDialog.Builder(this); View customTitleView = getLayoutInflater().inflate(R.layout.custom_title, null); builder.setCustomTitle(customTitleView); TextView title = customTitleView.findViewById(R.id.dialog_title); title.setText("长标题需要换行\n第二行"); ``` 至于如何去应用市场给自己的app评分,可以使用以下代码: ```java Uri uri = Uri.parse("market://details?id=" + getPackageName()); Intent intent = new Intent(Intent.ACTION_VIEW, uri); if (intent.resolveActivity(getPackageManager()) != null) { startActivity(intent); } else { // 应用市场未安装 } ``` 上述代码会打开应用市场详情页,直接跳转到当前应用的评分页面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值