問題タブ [android-contentresolver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - AndroidでgetContentResolverを呼び出すにはどうすればよいですか?
最初のAndroidアプリでロジックの一部をカプセル化するライブラリクラスを作成しています。カプセル化したい関数の1つは、アドレス帳を照会する関数です。そのため、が必要ContentResolver
です。ライブラリ関数をブラックボックス化する方法を理解しようとしています...つまり、Activity
を取得するために独自のコンテキストで各パスを使用しないようにしContentResolver
ます。
ContentResolver
問題は、ライブラリ関数内からを取得する方法を一生理解できないことです。を含むインポートが見つかりませんgetContentResolver
。グーグルは、を呼び出すgetContext
ために使用すると言いましたが、どちらかを含むインポートが見つかりません。次の投稿は、呼び出すオブジェクトを取得するために使用すると言われています。しかし、どちらかを含むインポートが見つかりません!Context
getContentResolver
getContext
getSystemService
getContext
getSystemService
だから私は疑問に思っています、カプセル化されたライブラリ関数内でContentResolverを取得するにはどうすればよいですか、それともActivity
それ自体のコンテキストへの参照ですべての呼び出しパスを持っているのでかなり行き詰まっていますか?
私のコードは基本的に次のようなものです。
getGroupsは、を渡す必要がないように、Context
またはContentResolver
可能であれば、それをきれいにブラックボックス化することを望んでいたために探していたメソッドです。
android - ContentProviderClient と ContentResolver を使用してコンテンツ プロバイダーにアクセスする
Android コンテンツ プロバイダのドキュメントではContentResolver
、 から取得したgetContentResolver()
を使用してコンテンツにアクセスする方法について説明しています。
ただしContentProviderClient
、 から入手できる もありますgetContentResolver().acquireContentProviderClient(authority)
。ContentResolver
プロバイダーからコンテンツにアクセスするために使用できるメソッドとほぼ同じメソッドを提供しているようです。
を直接使用するContentProviderClient
代わりに、いつ使用する必要がありContentResolver
ますか? 利点は何ですか?
android - Android SQL Null 定数値
お願いがあります...
コンテンツ リゾルバーのクエリに引数を渡そうとしています。引数が NULL の場合はすべての行を取得するか、逆に引数で指定された特定の値を取得します。
使用するメソッドは次のように宣言します。
したがって、作成したクエリは次のとおりです。
このメソッドを再利用可能にするために、artistName を引数として渡します。すべての行を選択したいので、定数 allArtists を渡します。
要点は、定数 allArtists = "" が期待どおりに null 値として機能しないため、このクエリは行を返さないことです。
最終的な問題は次のとおりです。クエリが "" ではなく NULL 値として受け取るように、定数をどのように宣言する必要がありますか?
どうもありがとう。
android - EメールContentResolverの問題
次のコードを使用して、デバイスに表示するメールアドレスのリストを作成していますListActivity
。現在、メールアドレスは問題なく取得できますが、次の形式で表示されます。null (email@address.com)
代わりに、name (email@address.com)
理想的ではありません。私が使用しているコードは、名前も取得しているはずです。
誰かが私が間違っていることを知っていますか?
android - 内部メモリandroidの書き込みに問題があります
上記のコードは常に機能していましたが、insert()でこの例外を生成しています。
これはスペースの問題ではなく、私が変更したのは、無関係のクラスのパッケージだけでした。また、電話を再起動しました。
android - カスタム コンテンツ プロバイダでの削除メソッドの呼び出し
私は Android を学んでいますが、カスタム コンテンツ プロバイダーの呼び出しに関する問題で行き詰まっています。私は教則本の例を使用しており、カスタム プロバイダーの作成方法について説明していますが、特定のメソッドを呼び出す方法の明確な例はありません。カスタム コンテンツ プロバイダーから単一のレコードを削除する方法を具体的に検討しています。
カスタム コンテンツ プロバイダ ( EarthquakeProvider.java
) のコードは次のとおりです。
メイン アクティビティから delete メソッドを呼び出して、データベース全体ではなく単一のエントリを削除しようとしています。OnLongClickListener
メイン アクティビティで配列リスト ビューに表示される選択レコードに対して約 を使用したいと考えています。
これは、私がこれまでにこの方法の主な活動で行ってきたものです。
上記のコードが機能しないことはわかっていますが、これは私の現在の理解で得られる限り近いものです。
これに関するヘルプは非常に高く評価されます。
android - Android:RawContactIdを使用した適切なアクセスとクエリ
そのため、私のアプリは同期アダプターをAndroidネイティブの連絡先マネージャーに統合しようとしています。連絡先が同期されると更新できないことを除いて、これはすべてスムーズに実行されています。この特定の問題の詳細はここにあります:Android:コンテンツリゾルバークエリが0行を返す必要がないのに、間違ったURIをクエリしているため、コンテンツリゾルバークエリが0の値を返すと言うだけで要約できます。信じる。
生の連絡先IDを電話に書き込むときは、次のコードを使用して書き込みます。
このコンストラクターメソッドは、同期リストに新しい連絡先を追加するときに呼び出されます。
コンストラクターでわかるように、私はnewInsertCpoというメソッドを呼び出しています。これは、次の場所で確認できます。
コードが表示されたので、問題について説明します。生の連絡先IDを作成して書き込むときは、RawContacts.CONTENT_URIに書き込みます。
ただし、uriをクエリすると、次のようにクエリされます。
Data.CONTENT_URIから。これが私の問題が発生している場所だと思います。Androidの公式開発サイトのサンプルコードを使用して、自分の用途に合わせて調整しましたが、この部分は例にかなり当てはまります。しかし、それは機能していません。私のリードは私が言ったことです。私はあるウリに手紙を書き、別のウリに質問しています。しかし、クエリをRawContacts.CONTENT_URI(例外の原因)に変更しようとしました。また、Data.CONTENT_URIに書き込むURIも変更しました。これも例外の原因です。さらに紛らわしいのは、lookupRawContactIdメソッドを実行するときにData.CONTENT_URIから生の連絡先IDを取得することです。
そうです、rawcontactIdを返すカーソルを取得した場合、同じrawcontactIdを使用して同じUriをクエリする0の値を取得するのはなぜですか?意味がありません!誰かが何か洞察を持っていますか?皆さんありがとう。
android - getContentResolver().query で Android アプリケーションがクラッシュする
着信コールの連絡先名を取得するには、添付のコードを見つけてください。ここでは、数字を「123」とハードコーディングしました。この連絡先をエミュレータに追加しました。しかし、アプリケーションは getContentResolver().query でクラッシュします。助けてください。
android - Android イベント contentResolver クエリ同期の問題
次のコードを使用して、コア イベント カレンダー アプリケーションからデータを取得し、アプリに表示しています。
コードは正常に動作しています。しかし、カレンダーにイベントを追加してアプリに戻ると、新しいイベントが表示されないことがあります。アプリを終了して再び戻るか、タブを変更すると、新しいイベントがリストに追加されます。同期を解決するにはどうすればよいですか?
android - コンテンツリゾルバーまたはアクティビティ以外の場所からテレフォニー設定にアクセスできますか?
androidのテストユーティリティの一部として、次のようにアクティビティのテレフォニー設定にアクセスできます。
コンテンツリゾルバーまたは別の方法を使用して、アクティビティの外部の設定にアクセスすることは可能ですか。