V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wxlwsy
V2EX  ›  Android

求教 android 大佬,如何在没有存储权限的情况下存储数据?

  •  
  •   wxlwsy · 2023-09-21 14:09:16 +08:00 · 8697 次点击
    这是一个创建于 436 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,app 上架被拒, 原因是不允许拒绝权限后退出 app.意思就是用户拒绝后也能继续使用. 开发反馈只有个存储权限,如果拒绝存储权限没法热更资源包了, 这就死胡同了.

    我想问是哪里问题?如何解决?

    19 条回复    2023-09-23 11:14:10 +08:00
    stinkytofu
        1
    stinkytofu  
       2023-09-21 14:10:52 +08:00   ❤️ 2
    可以放到 /sdcard/Android/data/xxx.xxx/ 里面啊, 这个不需要申请权限, 是你程序的外置存储私有目录
    AoEiuV020JP
        2
    AoEiuV020JP  
       2023-09-21 14:17:29 +08:00   ❤️ 1
    所以你不是开发是吧,让开发来问吧,
    CharmingCheung
        3
    CharmingCheung  
       2023-09-21 14:20:04 +08:00
    不让申请存储权限就是不想让 app 在手机里拉💩和随便读取手机文件
    没有不让存啊,getExternalStorageDirectory 一样可以存到你 App 的目录下,不需要权限,卸载 App 后文件也会一起删除,热更的场景没问题。
    kaicity
        4
    kaicity  
       2023-09-21 14:20:59 +08:00
    安卓 10 以后可以放/sdcard/Downloads/目录,不要权限
    zbatman
        5
    zbatman  
       2023-09-21 14:48:04 +08:00   ❤️ 1
    说说什么 APP ,我好拉黑
    LeibnizLeo
        6
    LeibnizLeo  
       2023-09-21 14:48:25 +08:00
    放自己 app 的文件下面。读写权限是为了获取非自身 app 数据的文件的,假如想要访问别的 app 的数据文件,才需要读写权限,直接放自己 app 的目录下是不需要权限的。
    Nuttertoo1s
        7
    Nuttertoo1s  
       2023-09-21 14:58:08 +08:00
    放私有目录下
    wxlwsy
        8
    wxlwsy  
    OP
       2023-09-21 15:23:20 +08:00
    @AoEiuV020JP 我是后端,前端确实不懂
    evilwk
        9
    evilwk  
       2023-09-21 15:58:31 +08:00
    从 API 19 开始读取或者写入扩展存储上的应用目录时,是不需要申请存储权限的。
    lakehylia
        10
    lakehylia  
       2023-09-21 16:31:10 +08:00
    开发忽悠你呢,没存储权限也能存储数据
    broken123
        11
    broken123  
       2023-09-21 17:30:53 +08:00
    /sdcard/Android/data/ 这个里面是 是所有 app 的安装目录,下面都是以包名开头创建的文件夹 com.alibab.zhifubao 这种类似。里面是可以直接放数据的,但是不能放太多数据。如嘎 app 卸载,这个文件夹就会呗删除 所有数据就没得了。还有可以直接放到 /sdcard/Downloads/目录下面 是可以直接放的。
    maokabc
        12
    maokabc  
       2023-09-22 06:39:41 +08:00 via Android
    这种不应该放/storage/emulated/0/Android/data/xx ,或者 app 自身目录,这俩不需要权限,性能远比那垃圾 fuse 文件系统强。
    iminto
        13
    iminto  
       2023-09-22 07:53:00 +08:00 via Android
    又一个被自家公司程序员忽悠的,哈哈哈
    gam2046
        14
    gam2046  
       2023-09-22 12:12:53 +08:00
    就这么说,你看微信、支付宝啥的,里面的小程序一类的,总不可能都是预装的吧,这么多年了,人家拒绝存储后一样能用。有时候,遇到问题,多反思一下自己,找找自己的原因,有没有努力,有没有认真搜资料,好吧。(狗头保命
    yinmin
        15
    yinmin  
       2023-09-22 12:18:58 +08:00
    我问了 GPT3.5 ,回答和你那个同事一样;又问了 GPT4 ,回答非常详细,提了 5 种方式并给出了示例代码:
    1.内部存储
    2.SharedPreferences
    3.应用私有的数据库
    4.Cache Files
    5.App-specific external storage

    你的那位同事缺一个 GPT4 ,哈哈~~~~
    psklf
        16
    psklf  
       2023-09-22 13:42:36 +08:00
    开发水平也太次了。。。。
    shangyu7
        17
    shangyu7  
       2023-09-22 14:26:25 +08:00
    解决方法很简单,把现在这个程序员开掉,招个靠谱的就行
    cc666
        18
    cc666  
       2023-09-22 14:53:01 +08:00
    把安卓开发开了吧。。。
    我一个随便学了几天安卓的后端都知道该咋办。。。
    rekulas
        19
    rekulas  
       2023-09-23 11:14:10 +08:00
    @yinmin 这种基础问题 3.5 已经很精通了,除非提问方式没对
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2598 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 03:42 · PVG 11:42 · LAX 19:42 · JFK 22:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.