pc端网站优缺点,百度seo点击,长春在线制作网站,如何快速自己做网站目标
使用 Android Room 实现持久化库。 代码
Kotlin 代码编写 DemoDatabase#xff0c;在build生成 DemoDatabase_Impl 疑问
Provider的数据会存在设备吗#xff1f; 内部存储: 当使用 Room 创建数据库#xff08;如 DemoDatabase#xff09;#xff0c;数据库文件通常…目标
使用 Android Room 实现持久化库。 代码
Kotlin 代码编写 DemoDatabase在build生成 DemoDatabase_Impl 疑问
Provider的数据会存在设备吗 内部存储: 当使用 Room 创建数据库如 DemoDatabase数据库文件通常会存储在 data/data/package_name/databases/ 目录下。例如如果包名是 com.example.yourapp则数据库文件将存储在 data/data/com.example.yourapp/databases/。这部分存储是应用的私有存储其他应用无法访问除非用户进行 root 操作。 provider 应用是数据库在哪是否会存在设备的是路径中
adb shell
# 进入应用的db目录sharepreference
cd data/data/com.demo.tool.provider 拉应用数据出来
adb pull data/data/com.demo.tool.provider 如何控制Provider的使用权限
在AndroidManifest.xml中可定义permission并在 provider 中定义读写权限的名称进行绑定。
?xml version1.0 encodingutf-8?
manifest xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/tools!-- 声明权限signature 或者 signatureOrSystem 等 --permission android:namecom.demo.nw.provider.networkdata.NetworkDataContentProvider.WRITE_NETWORK_DATAandroid:protectionLevelsignature/permission android:namecom.demo.tool.provider.networkdata.NetworkDataContentProvider.READ_NETWORK_DATAandroid:protectionLevelsignatureOrSystem/applicationandroid:allowBackuptrueandroid:dataExtractionRulesxml/data_extraction_rulesandroid:fullBackupContentxml/backup_rulesandroid:iconmipmap/ic_launcherandroid:labelstring/app_nameandroid:roundIconmipmap/ic_launcher_roundandroid:supportsRtltrueandroid:themestyle/Theme.DataProvidertools:targetApi34!-- NetworkDataContentProviderprovider中定义权限名 --provider android:process:networkSlicingProviderandroid:protectionLevelsignatureOrSystemandroid:writePermissioncom.demo.tool.provider.networkdata.NetworkDataContentProvider.WRITE_NETWORK_DATAandroid:readPermissioncom.demo.tool.provider.networkdata.NetworkDataContentProvider.READ_NETWORK_DATAandroid:multiprocesstrueandroid:labelDemo Tool Network Data Providerandroid:initOrder99android:exportedtrueandroid:enabledtrueandroid:directBootAwaretrueandroid:authoritiescom.demo.tool.provider.networkdata.NetworkDataContentProviderandroid:namecom.demo.tool.provider.networkdata.NetworkDataContentProviderandroid:grantUriPermissionstrue//application
/manifest