アプリケーションでコンテンツプロバイダーを初期化することは可能ですか?
ユーザーとサーバーの組み合わせごとにデータベースを作成する必要があり、コンテンツプロバイダーのoncreateメソッドのログイン情報を使用してデータベースを作成しているためです。
アプリケーションでコンテンツプロバイダーを初期化することは可能ですか?
ユーザーとサーバーの組み合わせごとにデータベースを作成する必要があり、コンテンツプロバイダーのoncreateメソッドのログイン情報を使用してデータベースを作成しているためです。
あなたがやろうとしているように聞こえることに基づいて、ContentProviderのデータベースアクセスをコンテキスト化することを検討することができます(これは、@ Gary B.が何を取得していたかを説明する別の方法かもしれません):
コンテンツプロバイダーを初期化するときに、ユーザーとサーバーの組み合わせのリストを格納するデータベースを作成します。次に、ユーザーがアプリケーションにログインしたら、対応するデータベースを作成し、ContentProviderのマスターリストを更新します。
ContentProviderのパブリック操作で、アクティブな(または要求されている)ユーザー/サーバーの組み合わせを判別してから、インストール時に作成したマスターデータベースで適切なデータベースを検索します。次に、ユーザー/サーバー固有の情報を読み取り、これを呼び出し元に返すことができます。
または、これをすべて1つのデータベース内に実装することもできますが、特定のアプローチを推奨するための要件について十分に理解していません...
SQLiteOpenHelperは通常、データベースの作成を行う場所です。より具体的には、onCreate(SQLiteDatabase)
メソッド。アプリのインストール時にデータベースを作成します。