AndroidManifest中的内容提供商

时间:2014-12-23 18:23:13

标签: android html5 cordova

我正在使用Apache Cordova开发混合应用程序。由于在Android 4.4中的表单中选择文件的错误,我不得不用android插件对其进行排序。

此插件允许您使用ajax将文件上传到php服务器。

问题是这个插件附带了第三方库,它将一个Content Provider添加到AndroidManifest.xml。在插件开发人员instructions之后,应该更改此ContentProvider。

  

请注意,与ContentProvider一样,DocumentProvider权限必须是唯一的。       你应该更改你的清单中的com.ianhanniballake.localstorage.documents       以及LocalStorageProvider.AUTHORITY字段。

这是插件添加到AndroidManifest.xml

的内容
provider android:authorities="com.ianhanniballake.localstorage.documents" android:enabled="@bool/use_provider" android:exported="true" android:grantUriPermissions="true" android:name="com.ianhanniballake.localstorage.LocalStorageProvider" android:permission="android.permission.MANAGE_DOCUMENTS">
  <intent-filter>
    <action android:name="android.content.action.DOCUMENTS_PROVIDER" />
  </intent-filter>
</provider>

在这个library中有一个名为LocalStorageProvider.java的类,其中修复了AUTHORITY:

公共类LocalStorageProvider扩展DocumentsProvider {     public static final String AUTHORITY =&#34; com.ianhanniballake.localstorage.documents&#34;;

问题是:我应该用什么来代替com.ianhanniballake.localstorage?因为如果没有进行任何更改,我无法在手机中安装我的应用程序的测试和发布版本,因为内容提供商必须是唯一消息出现。

提前致谢。 MANEL。

1 个答案:

答案 0 :(得分:0)

来自http://developer.android.com/guide/topics/manifest/provider-element.html

  

android:authorities一个或多个URI权限的列表   识别内容提供商提供的数据。多个权威   通过用分号分隔它们的名字来列出。避免   冲突,权限名称应使用Java样式的命名约定   (例如com.example.provider.cartoonprovider)。通常,它是   实现提供程序的ContentProvider子类的名称   没有默认值。必须至少指定一个权限。

所以也许是ContentProvider的子类并提供使用packagename.classname