2***@qq.com
2***@qq.com
  • 发布:2024-07-01 16:11
  • 更新:2024-07-02 11:42
  • 阅读:235

【报Bug】uniapp使用原生隐私政策提示框不同意的时候不能退出APP

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11 专业版 23H2

HBuilderX类型: 正式

HBuilderX版本号: 4.15

手机系统: Android

手机系统版本号: Android 13

手机厂商: 小米

手机机型: Redmi Note 12 Turbo

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: https://hmjc-1319391795.cos.ap-shanghai.myqcloud.com/qianxun/upload/image/20240628/1806644369943285760.apk

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

操作步骤:

下载APP安装完毕后打开App,在弹出的隐私协议弹窗选项中选择暂不同意,然后在二次确认弹窗中选择退出应用

预期结果:

能正常退出APP

实际结果:

不能退出App

bug描述:

uniapp使用原生隐私政策提示框不同意的时候不能退出APP

2024-07-01 16:11 负责人:DCloud_Android_DQQ 分享
已邀请:
DCloud_Android_DQQ

DCloud_Android_DQQ

1 我新建一个hello uni 项目是没有问题的。你也可以验证一下

2 我用你上传的apk测试,复现了问题。logcat 可以看到报错信息:

2024-07-02 11:40:54.410 30821-30821 System.err              pid-30821                            W  java.lang.NoSuchFieldException: custom_timpush_configs  
2024-07-02 11:40:54.410 30821-30821 System.err              pid-30821                            W      at java.lang.Class.getField(Class.java:2337)  
2024-07-02 11:40:54.410 30821-30821 System.err              pid-30821                            W      at com.tencent.qcloud.tim.push.impl.TIMPushServiceImpl.a(TIMPushServiceImpl.java:11)  
2024-07-02 11:40:54.410 30821-30821 System.err              pid-30821                            W      at com.tencent.qcloud.tim.push.impl.TIMPushServiceImpl.d(TIMPushServiceImpl.java:5)  
2024-07-02 11:40:54.410 30821-30821 System.err              pid-30821                            W      at com.tencent.qcloud.tim.push.impl.TIMPushServiceImpl.b(TIMPushServiceImpl.java:10)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at com.tencent.qcloud.tim.push.TIMPushService.onCreate(TIMPushService.java:4)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.content.ContentProvider.attachInfo(ContentProvider.java:2451)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.content.ContentProvider.attachInfo(ContentProvider.java:2421)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread.installProvider(ActivityThread.java:7508)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread.installContentProviders(ActivityThread.java:7019)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6790)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2132)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.os.Handler.dispatchMessage(Handler.java:106)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.os.Looper.loopOnce(Looper.java:201)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.os.Looper.loop(Looper.java:288)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at android.app.ActivityThread.main(ActivityThread.java:7918)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at java.lang.reflect.Method.invoke(Native Method)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)  
2024-07-02 11:40:54.411 30821-30821 System.err              pid-30821                            W  java.io.FileNotFoundException: timpush-configs.json

应该是原生插件初始化报错。导致应用快速重启。 建议你去掉原生插件之后再验证一下

  • 2***@qq.com (作者)

    确实是这个问题!感谢大佬

    2024-07-08 10:12

DCloud_Android_DQQ

DCloud_Android_DQQ

backToExit 去掉,或者配置成true.

https://uniapp.dcloud.net.cn/tutorial/app-privacy-android.html#%E9%85%8D%E7%BD%AE%E6%96%B9%E5%BC%8F

  • 2***@qq.com (作者)

    我设置成true了也还是不行,还是一样的

    2024-07-01 18:03

要回复问题请先登录注册