私は自分のアプリケーションにデータ同期を追加しました。アプリケーションがインストールされると、データの同期を促すプロンプトが表示されます。私のテスト中、私は記録の量が限られていて、うまくいきました。これで、実際のデータベースが接続されたので、同期中にアプリがハングして応答しなくなりました。アプリを閉じるためのアラートもアンドロイドデバイスに表示されます。同期のためにXamarin Froms一括データ挿入アプリケーションがハングアップ
、私はこの
bool response1 = await syncCustomers();
bool response2 = await syncItems();
if(response1 and response2)
{
do something
}
をしています両方syncCustomers()とsyncItemsは()ブール値を返すタスクです。彼らは、APIからデータをフェッチし、既存のデータベーステーブルをクリアし、新しくフェッチされたデータをテーブルに取り込みます。
同期処理中に、アクティビティインジケータが表示されます。データセットが小さければ、アプリは応答したままであり、データが同期されるまで(長くはない)インジケータが回転し続けます。 しかし、大規模なデータセットでは、アプリケーションがハングして閉じられる必要があります。ライブデータベースには約6〜7,000のレコードがあります。
次回からアプリを起動すると、アイテムと顧客がデータベースに存在します。つまり、データが正しく追加されます。しかし何らかの理由で、アプリがハングします。