1 Star 0 Fork 0

ScenarioSamples/News

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Web用户权限校验

介绍

本示例共介绍了Web用户权限校验以及应用广告的使用场景,方便开发者开发类似场景。

效果预览

约束与限制

1.仅支持标准系统上运行,支持设备:华为手机或运行在DevEco Studio上的华为手机设备模拟器。

2.支持 API Version 12 Release及以上版本。

3.支持 HarmonyOS 5.0.0 Release SDK及以上版本。

4.需要使用DevEco Studio 5.0.0 Release及以上版本进行编译运行。

使用说明

1.点击对应的web页浏览信息,跳转并加载本地对应的web信息页。

2.Web信息页会对请求拦截,加载本地资源以及只加载允许加载的信息页。

3.信息页内有应用广告,点击拉起应用详情进行下载或打开应用。

实现思路

1.Web用户权限校验以及应用广告场景。该场景演示跨域加载页面,通过设置onInterceptRequest属性,对请求进行拦截并替换加载本地资源。

Web({ src: this.webUrl, controller: this.webviewController })
    .height($r('app.float.web_height'))
    .onInterceptRequest((event) => {
        if (!event) {
            return;
        }
        let response = new WebResourceResponse();
        // 在reponse中设置本地资源,并返回
        response.set...
        return response
    })

2.Web应用广告是通过js方法调用loadAppDetail方法来加载应用详情。

// 应用侧方法
export function loadAppDetail(context: common.UIAbilityContext) {
  try {
    const request: Want = {
      parameters: {
        // 此处填入要加载的应用包名,例如: bundleName: "com.huawei.hmsapp.appgallery"
        bundleName: 'com.huawei.hmsapp.appgallery'
      }
    };
    productViewManager.loadProduct(context, request);
  } catch (err) {
    Logger.error('TAG', `loadProduct failed.code is ${err.code}, message is ${err.message}`);
  }
}

// 前端侧js方法
function appAdv() {
    window.ohosCallNative.callNative('appAdvertise', {})
}

工程目录

entry/src/main/ets                              // hap类型, 场景页面代码所在模块
|---entryability
|   |---EntryAbility.ets
|---entrybackupability
|   |---EntryBackupAbility.ets
|---model
|   |---CollapseModel.ets
|---pages
|   | ---MainPage.ets                           // 场景分类主页
|---views
|   |---news                                    // Web用户权限校验以及应用广告
|   |   |---views
|   |   |   |---NewsItem.ets
|   |   |   |---WebLoadOnIntercept.ets
|   |   |---News.ets
|   |---Collapse.ets
InteractWebAndApp                               // har模块,web前端页与应用侧交互实现
LoadWebPage                                     // har模块,web前端页加载以及公共实现

模块依赖

参考文档

Web组件

ChangeLog

修改内容 时间
首版本 2025.3.12

空文件

简介

【鸿蒙 Harmony Next 示例 代码】本示例共介绍了Web用户权限校验以及应用广告的使用场景,方便开发者开发类似场景。 展开 收起
HTML 等 2 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/scenario-samples/news.git
git@gitee.com:scenario-samples/news.git
scenario-samples
news
News
master

搜索帮助