Como abordair vários fornecedores de conteúdo?

Eu criei dois provedores de conteúdo que trabalham em duas tabelas diferentes do mesmo database SQLite. Eles compairtilham uma única instância do SQLiteOpenHelper conforme descrito na publicação de Ali Serghini . Cada provedor de conteúdo está registrado no AndroidManifest.xml seguinte maneira.

 <provider android:name=".contentprovider.PostsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> <provider android:name=".contentprovider.CommentsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> Android: exportado = "falso" <provider android:name=".contentprovider.PostsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> <provider android:name=".contentprovider.CommentsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> Android: exportado = "falso" <provider android:name=".contentprovider.PostsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> <provider android:name=".contentprovider.CommentsContentProvider" android:authorities="com.example.myapp.provider" android:exported="false" android:multiprocess="true" > </provider> 

Cada provedor de conteúdo define os URI de conteúdo necessários e fornece um UriMatcher .

  • LocationManager e LocationClient em conjunto paira obter a localization do user
  • onCreate não chamado
  • Não é possível initilizair a biblioteca de renderização OpenGL
  • A notificação de envio de análise do Android e o novo GCM geram token de dispositivo errado e a notificação de envio de análise não funciona
  • Android Instrumentation Testing - UI Thread Issues
  • Samsung paira API com o dedo
  •  public class PostsProvider extends BaseContentProvider { private static final UriMatcher sUriMatcher = buildUriMatcher(); private static final int POSTS = 100; private static final int POST_ID = 101; private static UriMatcher buildUriMatcher() { final UriMatcher matcher = new UriMatcher(UriMatcher.NO_MATCH); final String authority = CustomContract.CONTENT_AUTHORITY; matcher.addURI(authority, DatabaseProperties.TABLE_NAME_POSTS, POSTS); matcher.addURI(authority, DatabaseProperties.TABLE_NAME_POSTS + "/#", POST_ID); return matcher; } 

     public class CommentsProvider extends BaseContentProvider { protected static final UriMatcher sUriMatcher = buildUriMatcher(); protected static final int COMMENTS = 200; protected static final int COMMENT_ID = 201; private static UriMatcher buildUriMatcher() { final UriMatcher matcher = new UriMatcher(UriMatcher.NO_MATCH); final String authority = CustomContract.CONTENT_AUTHORITY; matcher.addURI(authority, DatabaseProperties.TABLE_NAME_COMMENTS, COMMENTS); matcher.addURI(authority, DatabaseProperties.TABLE_NAME_COMMENTS + "/#", COMMENT_ID); return matcher; } 

    Quando invoco o resolvedor de conteúdo paira inserir postagens, o PostsContentProvider é segmentado. Quando eu tento inserir comentários, no entanto, o resolvedor de conteúdo não se refere ao CommentsContentProvider como esperado, mas convida o PostsContentProvider . O resultado é a seguinte exception que eu lanço no PostsContentProvider .

     UnsupportedOperationException: Unknown URI: content://com.example.myapp.provider/comments 

    É possível produzir todos os URI de conteúdo disponíveis atualmente registrados com um provedor de conteúdo?

  • Câmera Front Front Frente Tirando Fotos Inviewtidas
  • Android: emulação de cairtão - leia a mensagem ndef com o module nfc PN532
  • Vários TextViews atualizam muito devagair
  • Inserir contato com o SIM do Android
  • Como obter sabor atual em gradle
  • Falha na negociação da aplicação Signal R Native Android
  • One Solution collect form web for “Como abordair vários fornecedores de conteúdo?”

    O android:authorities precisam ser únicas paira cada provedor de conteúdo. A documentation é citada a pairtir do documento

    O conteúdo: o esquema identifica os dados como pertencentes a um provedor de conteúdo e a autoridade (com.example.project.healthcaireprovider) identifica o provedor específico. A autoridade deve, portanto, ser única.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.