当前位置: 首页 > news >正文

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页

一、问题背景:

如今,大家都离不开各种手机应用。随着鸿蒙系统用户越来越多,大家都希望能在鸿蒙设备上快速找到想用的 APP。华为应用市场里有海量的 APP,但之前从鸿蒙设备进入应用市场找特定 APP 的过程有点繁琐。

从开发角度来说,打通鸿蒙设备到华为应用市场目标 APP 下载页的直接跳转,能优化整个开发链路。从产品需求出发,这能提升应用分发的效率,助力产品推广。

站在用户体验方面,这么做能大大节省用户找 APP 的时间,让大家更快下载想用的应用,极大地提升用户使用鸿蒙设备获取应用的体验。所以,实现这个跳转功能十分必要。

二、解决方案:

源码示例如下,以跳转到华为应用市场的wx界面举例:

跳转目标app的下载页,需要知道其包名即可。
在这里插入图片描述
点击跳转按钮后的效果:
在这里插入图片描述

import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
import { BusinessError } from '@kit.BasicServicesKit';

struct AGCStorePage {private TAG: string = "AGCStorePage";// 以wx举例: mAppId: string = 'com.tencent.wechat';controller: TextInputController = new TextInputController();build() {Row() {Column() {TextInput({ text: this.appId, placeholder: '请输入应用的appId', controller: this.controller }).width('90%').onChange((value: string) => {this.mAppId = value})Button('点击跳转到鸿蒙版应用市场详情页面').margin({top: 50}).onClick(()=>{const want: Want = {uri: "store://appgallery.huawei.com/app/detail?id=" + this.mAppId};const context = getContext(this) as common.UIAbilityContext;context.startAbility(want).then(()=>{//拉起成功console.log(this.TAG, "跳转成功!");}).catch((err: BusinessError)=>{// 拉起失败console.log(this.TAG, "跳转失败!" + JSON.stringify(err));});})}.width('100%')}.height('100%')}
}

注意:
拼接分享的应用下载页链接为(以wx举例,替换id即可跳转到目标app): https://appgallery.huawei.com/app/detail?id=com.tencent.wechat

在鸿蒙设备上加载该链接,为自动跳转到应用市场app下载页。若不是鸿蒙设备,会提示:
在这里插入图片描述

相关文章:

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页 一、问题背景: 如今,大家都离不开各种手机应用。随着鸿蒙系统用户越来越多,大家都希望能在鸿蒙设备上快速找到想用的 APP。华为应用市场里有海量的 APP,但之前从鸿蒙设备进…...

《研发管理 APQP 软件系统》——汽车电子行业的应用收益分析

全星研发管理 APQP 软件系统在汽车电子行业的应用收益分析 在汽车电子行业,技术革新迅猛,市场竞争激烈。《全星研发管理 APQP 软件系统》的应用,为企业带来了革命性的变化,诸多收益使其成为行业发展的关键驱动力。 《全星研发管理…...

【IDEA 2024】学习笔记--文件选项卡

在我们项目的开发过程中,由于项目涉及的类过多,以至于我们会打开很多的窗口。使用IDEA默认的配置,个人觉得十分不便。 目录 一、设置多个文件选项卡按照文件字母顺序排列 二、设置多个文件选项卡分行显示 一、设置多个文件选项卡按照文件字…...

Android SystemUI——服务启动流程(二)

在 Andorid 系统源码中,package/apps下放的是系统内置的一些 APP,例如 Settings、Camera、Phone、Message 等等。而在 framework/base/package 下,它们也是系统的 APP,SystemUI 就在此目录下。它控制着整个 Android 系统的界面,但其实他也是一个 APP,不同于一般的 APP,它…...

iOS - 内存对齐

1. 基本的内存对齐 // 对象内存对齐 struct objc_object {// isa 指针 8 字节对齐isa_t isa __attribute__((aligned(8))); };// 定义对齐常量 #define WORD_MASK 7UL // 字对齐掩码 #define WORD_SHIFT 3UL // 字对齐位移 #define WORD_SIZE 8 …...

小游戏前端地区获取

目前前端获取除了太平洋,没有其它的了。 //在JS中都是使用的UTF-8,然而requst请求后显示GBK却是乱码,对传入的GBK字符串,要用数据流接收,responseType: "arraybuffer" tt.request({url: "https://whoi…...

AIGC时代:如何快速搞定Spring Boot+Vue全栈开发

文章目录 一、Spring Boot基础二、Vue.js基础三、Spring Boot与Vue.js集成四、性能优化与最佳实践《快速搞定Spring BootVue全栈开发》 内容简介作者简介目录前言/序言本书内容本书特点读者对象 随着人工智能生成内容(AIGC)技术的迅速发展,…...

MDX语言的多线程编程

MDX语言的多线程编程 引言 多线程编程是一种重要的编程技术,广泛用于提高程序的运行效率和响应速度。随着计算机硬件的发展,多核处理器的普及,多线程编程显得尤为重要。MDX(Multi-dimensional Expressions)语言作为一…...

Vue.js组件开发-实现输入框与筛选逻辑

在Vue.js组件开发中,实现输入框与筛选逻辑通常涉及创建一个输入框组件,让用户能够输入搜索关键字,并根据这些关键字过滤一个数据列表。 步骤 ‌准备数据‌: 在Vue组件中,准备一个数据列表(通常是一个数组…...

配置Allure环境变量【macOS版】

1. 进入github官网,搜索allure 点击进入,下滑找到Download栏目,点击release 2. 下载安装包并解压 我下载的是zip,解压至存放目录,复制该目录。(一会配置环境变量用) 3. 编辑.zsrch文件&…...

AndroidStudio升级到2024.2.2项目AGP升级8.8.0版本记录

背景 升级as,一般会把agp一起升级。我的原来版本是8.7.2 plugins {id com.android.application version 8.7.2 apply falseid com.android.library version 8.7.2 apply falseid org.jetbrains.kotlin.android version 1.8.10 apply false }升级后版本&#xff1a…...

Require:利用MySQL binlog实现闪回操作

1,闪回原理 【binlog】MySQL binlog以event的形式,记录了MySQL server从启用binlog以来所有的变更信息,能够帮助重现这之间的所有变化。MySQL引入binlog主要有两个目的:一是为了主从复制;二是某些备份还原操作后需要重…...

计算机网络 (40)域名系统DNS

前言 计算机网络域名系统DNS(Domain Name System)是互联网的基础技术之一,它负责将人类可读的域名转换为计算机用来通信的数字IP地址。 一、基本概念 DNS的主要目的是将域名解析或翻译为IP地址,使得用户可以通过简单易记的域名来访…...

UE5游戏性能优化指南

UE游戏性能和场景优化思路: 1. 可以把可延展性调低,帧率会大幅提高,但画质会大幅降低 2.调整固定灯光,静态光源,烘焙构建光照,灯光重叠距离,关闭阴影 3.设置模型和地形LOD 4.开启Nanite&…...

Gitlab Runner安装与配置

由于格式和图片解析问题,为了更好阅读体验可前往 阅读原文 本篇使用Docker安装Gitlab runner进行runner的安装和注册,其他方式请参考官方文档非Docker安装Gitlab runner 请确保runner版本和gitlab版本兼容以及docker相关版本兼容问题 下载镜像 docker p…...

如何有效防止和解决IP劫持问题

一、什么是IP劫持? IP劫持是一种攻击方式,攻击者通过伪装成合法的IP地址欺骗网络系统,从而非法获取数据或中断服务。这种攻击可以导致数据泄露、服务不可用等多种严重后果。 二、防范措施 启用SSL/TLS加密 SSL/TLS协议可以在客户端和服务器…...

2006-2020年各省人均水资源量数据

2006-2020年各省人均水资源量数据 1、时间:2006-2020年 2、来源:国家统计局、统计年鉴 3、指标:行政区划代码、地区名称、年份、人均水资源量 4、范围:31省 5、指标解释:人均水资源量是指一个国家或地区在一定时期…...

C++基础入门(二)

目录 前言 一、重载 1.函数重载 2.运算符重载 二、构造函数 1.什么是构造函数 2.带参数的构造函数 3.使用初始化列表 4.this关键字 5.new关键字 三、析构函数 1.什么是析构函数 四、静态成员变量 1.静态成员的定义 2.静态成员变量的作用 五、继承 1.继承基本概…...

互联网架构困境:网络与信息安全

当我们说 TCP/IP 没有内置安全属性时,这到底是什么意思?事实上仔细观察身边的世界,很少有内置安全属性的,这源自于石器时代的野人们没有粮仓需要保护。 “互联网前身 ARPAnet 最初来自于美国国防部对等通信需求”,即使…...

HIVE技术

本文章基于黑马免费资料编写。 hive介绍 简介 hive架构 hive需要启动的配置 执行元数据库初始化命令 使用hive必须启动的服务 ./schematool -initSchema -dbType mysql -verbos启动 Hive 创建一个 hive 的日志文件夹 mkdir /export/server/hive/logs启动元数据管理服务 n…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM&#xff09…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

Android Framework预装traceroute执行文件到system/bin下

文章目录 Android SDK中寻找traceroute代码内置traceroute到SDK中traceroute参数说明-I 参数(使用 ICMP Echo 请求)-T 参数(使用 TCP SYN 包) 相关文章 Android SDK中寻找traceroute代码 设备使用的是Android 11,在/s…...

Yolo11改进策略:Block改进|FCM,特征互补映射模块|AAAI 2025|即插即用

1 论文信息 FBRT-YOLO(Faster and Better for Real-Time Aerial Image Detection)是由北京理工大学团队提出的专用于航拍图像实时目标检测的创新框架,发表于AAAI 2025。论文针对航拍场景中小目标检测的核心难题展开研究,重点解决…...

动态生成element-plus的scss变量;SCSS中实现动态颜色变体生成

文章目录 一、动态css变量1.生成内容2.动态生成css变量2.1新增_color-utils.scss(不推荐)2.2新增_color-utils.scss(推荐)2.3theme.scss引入使用 一、动态css变量 1.生成内容 在我们修改element-plus主题色时候,会自…...

可视化图解算法48:有效括号序列

牛客网 面试笔试 TOP101 | LeetCode 20. 有效的括号 1. 题目 描述 给出一个仅包含字符(,),{,},[和],的字符串,判断给出的字符串是否是合法的括号序列 括号必须以正确的顺序关闭,"()"和"()[]{}"都是合法的括号序列&…...

android关于pthread的使用过程

文章目录 简介代码流程pthread使用hello_test.cppAndroid.bp 编译过程报错处理验证过程 简介 android开发经常需要使用pthread来编写代码实现相关的业务需求 代码流程 pthread使用 需要查询某个linux函数的方法使用,可以使用man 函数名 // $ man pthread_crea…...

django paramiko 跳转登录

在使用Django框架结合Paramiko进行SSH远程操作时,通常涉及到自动化脚本的执行,比如远程服务器上的命令执行、文件传输等。如果你的需求是“跳转登录”,即在登录远程服务器后,再通过该服务器的SSH连接跳转到另一台服务器&#xff0…...