uni-app 修改androidPrivacy.json内容后隐私政策弹窗无效,去掉manifest.json的隐私政策配置隐私弹窗不显示

uni-app 修改androidPrivacy.json内容后隐私政策弹窗无效,去掉manifest.json的隐私政策配置隐私弹窗不显示

开发环境 版本号 项目创建方式
Windows Windows11 CLI

产品分类:uniapp/App
PC开发环境操作系统:Windows
手机系统:Android
手机系统版本号:Android 14
手机厂商:小米
手机机型:K70
页面类型:vue
vue版本:vue2
打包方式:云端
CLI版本号:2.8.8

示例代码:

{
  "version": "1",
  "prompt": "template",
  "title": "服务协议和隐私政策",
  "message": "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br>  你可阅读<a href="">《服务协议》</a>和<a href="">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
  "buttonAccept": "同意并接受",
  "buttonRefuse": "暂不同意",
  "hrefLoader": "system",
  "backToExit":"false",
  "second": {
    "title": "确认提示",
    "message": "  进入应用前,你需先同意<a href="">《服务协议》</a>和<a href="">《隐私政策》</a>,否则将退出应用。",
    "buttonAccept": "同意并继续",
    "buttonRefuse": "退出应用"
  },
  "disagreeMode":{
    "support": true,
    "loadNativePlugins": false,
    "visitorEntry": true,
    "showAlways": false
  },
  "styles": {
    "backgroundColor": "#00FF00",
    "borderRadius":"5px",
    "title": {
      "color": "#ff00ff"
    },
    "buttonAccept": {
      "color": "#ffff00"
    },
    "buttonRefuse": {
      "color": "#00ffff"
    },
    "buttonVisitor": {
      "color": "#00ffff"
    }
  }
}

操作步骤:

删掉manifest.json的隐私协议配置,在根目录和src目录下新建androidPrivacy.json文件,文件代码如代码示例,重新打包后,隐私协议并没有显示出来,启动直接进入首页

预期结果:

APP 首次启动弹隐私协议弹窗,显示游客模式按钮,能进入游客模式

实际结果:

APP 首次启动隐私协议没有弹出来直接进入了首页

bug描述:

在安卓端使用隐私政策弹窗,更改了androidPrivacy.json的内容。在app里面没有效果,只能在manifest.json内改,但是设置disagreeMode游客模式,并没有效果

更多关于uni-app 修改androidPrivacy.json内容后隐私政策弹窗无效,去掉manifest.json的隐私政策配置隐私弹窗不显示的实战教程也可以访问 https://www.itying.com/category-93-b0.html

13 回复

修改后,修改新的版本号试试

更多关于uni-app 修改androidPrivacy.json内容后隐私政策弹窗无效,去掉manifest.json的隐私政策配置隐私弹窗不显示的实战教程也可以访问 https://www.itying.com/category-93-b0.html


也修改版本号,一样没弹出来

回复 x***@xinletu.love: 卸载重新安装了么

回复 套马杆的套子: 是的,卸载重装了,依然没有弹出来,可能是CLI版本太老不支持,但是升级cli版本各种报错

感谢反馈,初步判断是新版引入模式未识别隐私政策json文件,请等待后续排查修复

请问排查有结果了么

回复 x***@xinletu.love: 最新版本已修复该问题,更新一下cli版本,新版cli已修复

回复 HRK_01: 除了更新最新版cli,还有其他方法么?我目前是2.8.8版本,版本差别太大很多兼容问题

回复 HRK_01: vue2的cli版本,升级为哪个版本合适呢

回复 x***@xinletu.love: 试一下2021.11.22之后发布的版本

回复 HRK_01: 请问用yarn升级,报Couldn’t find package “qrcode-terminal” on the “npm” registry.这些依赖的错是什么去情况呢?是库不在npm?有没有其他的升级方式呢

回复 x***@xinletu.love: 设置一下国内镜像源试试,有些源缺失部分依赖

在使用 uni-app 开发应用时,如果遇到修改 androidPrivacy.json 后隐私政策弹窗无效,或者去掉 manifest.json 中的隐私政策配置后隐私弹窗不显示的问题,可能是由于以下原因导致的。下面我将详细解释可能的解决方案。


1. 检查 androidPrivacy.json 文件格式

确保 androidPrivacy.json 文件的格式正确,并且包含了必要的字段。以下是一个示例:

{
  "title": "隐私政策",
  "message": "请您在使用本应用前仔细阅读并同意我们的隐私政策。",
  "buttonAccept": "同意",
  "buttonRefuse": "拒绝",
  "second": {
    "title": "再次提醒",
    "message": "请务必同意隐私政策以继续使用本应用。",
    "buttonAccept": "同意",
    "buttonRefuse": "退出应用"
  }
}
  • title:弹窗标题。
  • message:弹窗内容。
  • buttonAccept:同意按钮的文本。
  • buttonRefuse:拒绝按钮的文本。
  • second(可选):用户拒绝后的二次弹窗配置。

2. 确保 androidPrivacy.json 文件路径正确

androidPrivacy.json 文件需要放置在项目的 nativeplugins 目录下。路径如下:

项目根目录/nativeplugins/androidPrivacy.json

如果路径不正确,隐私政策弹窗可能不会生效。


3. 检查 manifest.json 中的配置

manifest.json 中,需要正确配置隐私政策弹窗的相关设置。以下是一个示例:

{
  "app-plus": {
    "privacy": {
      "prompt": "template", // 使用模板弹窗
      "template": {
        "title": "隐私政策",
        "message": "请您在使用本应用前仔细阅读并同意我们的隐私政策。",
        "buttonAccept": "同意",
        "buttonRefuse": "拒绝"
      }
    }
  }
}

如果去掉 manifest.json 中的隐私政策配置,隐私弹窗将不会显示。


4. 清除缓存并重新编译

修改 androidPrivacy.jsonmanifest.json 后,建议清除项目缓存并重新编译。可以执行以下步骤:

  1. 在 HBuilderX 中,点击菜单栏的 运行 -> 清理项目缓存
  2. 重新编译项目,点击 运行 -> 运行到手机或模拟器

5. 检查运行环境

确保运行环境支持隐私政策弹窗功能。某些低版本的 HBuilderX 或 uni-app SDK 可能不支持该功能。建议更新到最新版本。


6. 调试日志

如果以上方法无效,可以通过调试日志查看隐私政策弹窗是否被触发。在 manifest.json 中启用调试模式:

{
  "app-plus": {
    "debug": true
  }
}
回到顶部