検索

ホームページ  >  に質問  >  本文

Android ContentProvider用法解惑

PHPzPHPz2773日前714

全員に返信(3)返信します

  • 巴扎黑

    巴扎黑2017-04-17 17:05:14

    申し訳ありませんが、もう一度自問します。私はこの問題をコードレベルで解決しました。解決策は次のとおりです。

    1. ContentProvider の更新、挿入、削除が UI の表示に影響を与える場合、コード内で DB を直接操作することはできず、代わりに ContentProvider を一律に使用し、ContentObserver を登録する必要があります。 UIを切り替えるためにUriを監視します。

    2. ContentProvider の動作が UI に影響しない場合は問題ありません。内部でDBを直接操作することも可能です。

    返事
    0
  • 迷茫

    迷茫2017-04-17 17:05:14

    ContentProvider の定義によれば、これはさまざまなアプリケーションでデータを交換するための標準 API であり、アプリケーションが他のアプリケーションにデータを公開する必要がある場合に使用でき、他のアプリケーションは ContentResolver を通じて公開されたデータを操作して公開できます。 ContentProvider を介して、独自のデータ操作インターフェイスを使用して、他のアプリケーションはこのインターフェイスを通じて対応する追加、削除、変更、およびクエリ操作を実行できます。ただし、ContentResolver を介した操作の本質は ContentProvider の操作を呼び出すことであり、その操作では SQLiteOpenHelper のデータベースが使用されます。したがって、個人的には書き直す必要はないと思いますが、これも個人的な意見ですので、実際に試してみると結果がわかります。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:05:14

    それもそのはず、data経由で直接書き込まれたデータはアプリケーションのプライベートデータなので他のアプリケーションからはアクセスできませんが、SDカード内でDBファイルを操作すればアクセスできるようです。

    返事
    0
  • キャンセル返事