2

Androidでodata4jを介してRESTletサービスを実装しています。

アプリケーションを実行すると、データの流れが一定になり、odataサーバーに送信する必要があります。

次のメソッドは、新しいデータを取得します。

private void freshData(Data data) {
    try {
        dataTransmitter.sendData(data, this.ptId);
    } catch (Exception ex) {
        //
    }

次のメソッドは、データをサーバーに送信します。

ODataJerseyConsumer c = ODataJerseyConsumer.create(serviceUrl);

public void sendData(Data data, int ptId) throws Exception {
    OEntity newData = c.createEntity(entitySet)
            .properties(OProperties.int32("ptID", ptID), 
             OProperties.double_("data", data.getDouble())))
            .execute;

これまでのところ問題ありません。しかし、モバイル接続が切断されたり遅れたりした場合はどうなりますか?

1)ステータスを取得する方法はありますexecute()か(ポジティブセンド、またはモバイル接続なしなど)。

2)送信が失敗した場合、またはまだ進行中の場合、古いデータがなくなったときに、送信するために新しいデータを保存する必要があります。私が見つけていない利用可能なodata4j(0.8-SNAPSHOT)の機能はありますか、またはたとえばキューでこれを行う必要がありますか?

お手伝いありがとう!

4

0 に答える 0