假设我有一个名为 A 的应用程序,其数据目录为:com.example.test
现在我想制作另一个名为 B 的应用程序来修改 com.example.test 中的某些内容。
当然我知道两者必须共享相同的签名。但我还需要什么?
基本上我正在尝试设计一个用户可以插入新组件的应用程序。任何想法?
我相信最安全的方法是使用内容提供商 http://developer.android.com/guide/topics/providers/content-providers.html。然后,要从应用程序 B 访问应用程序 A 中的文件,您可以声明一个ContentProvider
在应用程序A中并覆盖public ParcelFileDescriptor openFile(Uri uri, String mode) http://developer.android.com/reference/android/content/ContentProvider.html#openFile%28android.net.Uri,%20java.lang.String%29方法。然后应用程序 B 可以使用以下命令通过适当的 uri 访问位于应用程序 A 数据目录中的文件getContentResolver().openInputStream(...) http://developer.android.com/reference/android/content/ContentResolver.html#openInputStream%28android.net.Uri%29方法。欲了解更多信息,请参阅:
http://www.grokkingandroid.com/handling-binary-data-with-contentproviders/ http://www.grokkingandroid.com/handling-binary-data-with-contentproviders/
https://stackoverflow.com/a/4336013/1482726 https://stackoverflow.com/a/4336013/1482726
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)