app跳转到应用外部

126 阅读1分钟

一、跳转到手机设置界面

action': 'action.settings.app.info

let content = getContext(this) as common.UIAbilityContext
let wantInfo : Record< string,string >={
  'action': 'action.settings.app.info',
}
content.startAbility(wantInfo).then((res)=>{

}).catch((e:Error) =>{
  console.log('打开失败'+ JSON.stringify(e))
})

二、打开外部应用

action:ohos.want.action.viewData uri:应用的scheme 例:

// 打开微信
let content = getContext(this) as common.UIAbilityContext
let wantInfo:Record<string,string>= {
  'action': 'ohos.want.action.viewData',
  'uri':'weixin://'
}
content.startAbility(wantInfo).then(() =>{
  
}).catch((e:Error)=>{
  
})
// 打开高德
let latitude = "40.05"; //纬度
let longitude = "116.30"; //经度
let content = getContext(this) as common.UIAbilityContext
let wantInfo :Record<string,string>= {
  'action': 'ohos.want.action.viewData',
  'uri':`androidamap://navi?sourceApplication=appname&poiname=fangheng&lat=${latitude}&lon=${longitude}&dev=1&style=2`
}
content.startAbility(wantInfo).then(()=>{
}).catch((e:Error)=>{
  
})

三、跳转到华为应用市场

// 拉起应用市场对应的应用详情界面
startAppGallery(context: common.UIAbilityContext,bundleName:string){
  let want: Want = {
    action: 'ohos.want.action.appdetail',
    uri: 'store://appgallery.huawei.com/app/detail?id=' + bundleName, //  bundleName为需要打开应用详情的应用的包名 
  }
  
  context.startAbility(want).then(()=>{
    
  }).catch((e:BusinessError)=>{
    
  })

}