問題タブ [android-syncadapter]

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.

0 投票する
6 に答える
4224 参照

android - SampleSyncAdapter ブレークポイントが機能しない

SampleSyncAdapter の例がどのように機能するかを学ぶために Eclipse を使用しています。ブレークポイントを機能させることができません。複数の場所にブレークポイントを設定しましたが、どれもヒットしません。たとえば、AuthenticatorActivity.onCreate() が呼び出されることはありません。理由を知っている人はいますか?

ありがとう。

0 投票する
0 に答える
414 参照

android-emulator - ContactsContract.RawContacts.SYNC2 は、実際のデバイスでは常に null であり、SDK エミュレーターでは正常に動作します

Sam Steele の demoに基づいて SyncProvider を作成しています。

しかし、私は大きな問題に遭遇しました。タイムスタンプを ContactsContract.RawContacts.SYNC2 フィールドに書き込みます。SDK エミュレーターでは、これは問題なく機能します。ただし、私のGalaxy Nexusではそうではありません...理由や修正方法を知っている人はいますか?

これが私のコードです:

タイムスタンプの書き込み:

それを読む:

何らかの理由で、c1.isNull は Galaxy Nexus では常に true のようです。私は何を間違っていますか?

更新:どうやら、いくつかの連絡先 (100 を超えるうちの 1-5) に対して書き込まれることがあるため、さらに混乱しています...

更新: ContactProvider SQL db を確認しましたが、sync2 フィールドが実際には空であるため、タイムスタンプの書き方に問題があるようです。

0 投票する
1 に答える
618 参照

android - 同期アダプター定義

私は同期アダプターを実装しており、同期アダプターが何であるかを説明することはできますが、その定義を見つけたかったのです。見つかりませんでした。

ここで明確な説明を見つけましたが、それは定義ではありません。

どこかに、Android SyncAdapter の正式な定義はありますか? たとえば、AbstractThreadedSyncAdapterを拡張することは厳密に必要ですか? 私にはそのようには見えませんが、そのページはそれを想定しているようです。

よろしくお願いします

0 投票する
1 に答える
427 参照

android - 特定の SyncAdapter アカウントのアカウント設定に移動しますか?

特定の SyncAdapter アカウントのアカウント設定を開きたいです。このアクティビティに移動するためにインテントに渡すことができるアクションや URI はありますか?

特に私がアカウントを作成したことを考えると、特定のアカウントのアカウント設定 (同期するコンテンツ プロバイダーなど) に移動するのは簡単なようです。(SYNC_SETTINGS インテントを使用して同期アカウントのリストに移動したくないことに注意してください。最初にそこに移動することによるハックがあるかもしれませんが?)

0 投票する
3 に答える
3136 参照

android - SyncAdapteronPerformSync中にAsyncTaskを正しく使用する方法

強制終了ダイアログから報告されたユーザーから、次のようなバグレポートが多数届いています。

今、私はこの問題をどのように解決するのが最善かを考えようとしています。onPerformSync実装内で、いくつかのAsyncTaskを作成して実行しています。私の問題は、onPerformSyncから戻る前にこれらのタスクが完了するのを待っていないことだと思います。私は次のことをしようとしました:

次に、カウンターを設定し、そのカウンターがゼロに減少したら、非同期タスクからのコールバック内でLooper.myLooper()。quit()を呼び出します。

しかし、これを行うと、次のランタイムエラーでアプリケーションがさらに激しくクラッシュします。

同期を正しく実行する方法はありますか?

0 投票する
1 に答える
569 参照

android - sync_extras_upload は何に使用されますか?

ContentResolver クラス内には、syncadpaters に使用されるいくつかの定数があります。定数 SYNC_EXTRAS_UPLOAD の用途を知りたいですか?

0 投票する
5 に答える
1756 参照

android - インターネット接続なしのsyncadapter

正常に動作する同期アダプターがあります。アドレス帳を別のローカル ストレージ (私のアプリケーション) と同期する必要があるため、インターネット接続は必要ありません。Wifi がオフになっており、デバイスにインターネット接続がない場合、Android は [アカウントと同期] 設定アクティビティで同期を無効にします。

接続がオフのときでも同期アダプターをオンにしておく方法はありますか?

0 投票する
1 に答える
668 参照

android - さまざまなデバイス(Android、iPhoneなど)のクライアントIDとバックエンドサーバーIDを同期する方法

SyncAdapter、カスタムContentProviderAccountManagerサービスを使用して同期しています。私は同期の実装で少し立ち往生しています。モバイルデバイスID(Androidの場合)をサーバーテーブルに保存する連絡先のSDKの例「SampleSyncAdapter」に大いに助けられた_idので、ダーティリストで応答すると、デバイスはコンテンツを追加するか更新するかを認識します。

このパターンは、クライアントごとに新しいサーバー側の列を追加する必要があることを意味しますか?将来的には他のプラットフォームをサポートする可能性があります(たとえば、iPhoneデータID-SDKに精通していません)。

0 投票する
1 に答える
1896 参照

android - AndroidSync-Adapterのユースケース

ここから、

連絡先は、複数の生の連絡先を1つの集合体に結合します。これは、ユーザーがPeopleandPhoneアプリの実際の連絡先として認識するものです。

同期アダプターは、生の連絡先をクラウドソースと同期します。Marketアプリケーション(例:Skype、Twitter、Google +)にバンドルできます。

ユーザーが連絡先を処理している間、同期アダプターは未加工の連絡先行を処理します。彼らは生の連絡先内のデータを所有していますが、設計上、生の連絡先の行を他の行と適切に結合するのはAndroidに任されています。

それで、Skype、Twitterなどのそれぞれに異なる生の連絡先エントリを持つ連絡先があるとしましょう。

だから、私の質問は、同期アダプターを使用して連絡先全体をクラウドストレージと同期できるか、または同期アダプターは、TwitterアプリがTwitterの連絡先を同期するなどのアプリケーションに属するコンテンツプロバイダーに同期機能を提供することを目的としていますか? Skypeの連絡先を同期するSkypeアプリ。

0 投票する
3 に答える
3194 参照

android - AndroidSyncAdapterコールバック

SDKのSimpleSyncAdapterサンプルプロジェクトに沿って、SyncAdapter、AccountManager、およびプライベートContentProviderを実装しました。それはすべてうまく機能しています。

ここで、特定のフラグが設定された新しい行がリモートサーバーからダウンロードされたときに、ユーザーにメッセージを表示したいと思います。クエリを実行してアクティビティからのメッセージを表示できるように、同期が終了したときにSyncAdapterからのコールバックが必要です。StackOverflowでこれについて説明している質問をいくつか見ましたが、良い答えはありません。

Android SyncAdapterの進捗状況をどのようにリッスンしますか?SyncStatusObserverは役に立たないと言います。ユーザーmobibobは、ResultReceiverを使用して同期スレッドからUIに応答することを提案しています。

同期がいつ終了したかを知る方法は?SyncServiceでインテントを使用することをお勧めします。

同期完了をAndroidSyncManagerに通知する方法は?SyncResultの使用を提案します。maxpower47によってリンクされたサンプルコードは、SyncResultクラスを使用して例外を報告しますが、同期が正常に完了したかどうかは実際には報告しません。

どちらが最適なオプションかわかりません。また、これらのソリューションのいずれかが使用されているプロジェクトの例を見たことがありません。