我正在开发一款应用程序,可以进行应用程序内购买并从我的服务器下载视频并将它们存储在设备上。 问题是,这些视频是付费视频,将被保存在高度安全的地方在应用本身内。
这样做的可能性有多大?我查看了设置 android:exported="false"
,但它只是限制其他应用程序访问我的应用程序的数据。但是,即使将设备连接到 PC,如何将视频存储在默认情况下限制查看的位置?
是否允许应用程序将数据存储在设备的 \data
文件夹中?如果是这样,请告诉我怎么做!
最佳答案
您可以将文件存储在应用程序的数据文件夹中,只要手机未获得 root 权限,就应该只有您的应用程序能够访问它们。
但是。手机上的本地存储通常是有限的,因此将视频存储在那里不是一个好主意。此外,除非您要集成自己的视频播放器,否则您可能会在尝试让手机播放私有(private)文件夹中的视频时遇到问题。
谈到安全问题,我建议尝试将它们保存在 SD 卡上,并尝试加密它们,这样它们就不能从磁盘中读取原始数据,或者(可能)尝试文件权限,尽管我怀疑后者是否有效。
要进行加密,我会下载视频,对其进行加密并将其保存到 SD 卡中。当你想看的时候,解密并暂时保存到本地存储以供观看。不过,不确定会获得什么样的性能。另外,如果您依靠操作系统来播放您的视频,您可能会遇到上述相同的权限问题。根据这一切的重要性,您可以探索文件/文件夹结构模糊的地方,因此手动获取它们更加复杂。不会阻止所有的抓取尝试,但会阻止临时用户。
关于android - 用于在 Android 中存储付费应用程序特定内容的私有(private)存储文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8125281/