1

特定の場所の近くにいるときにユーザーに通知するアプリケーションを作成しています。同時にアクティブ化するには、さまざまなジオフェンスが必要になる場合があります。

Android のジオフェンシング APIが最近、新しいPlay Servicesで更新され、バッテリー消費を改善するための言及が更新されたため

複数のジオフェンスを同時に使用して通知を取得する方が良いですか、それとも定期的にユーザーの位置をサーバーに送信し、そこでユーザーに通知するかどうかを決定する必要がありますか?

複数のジオフェンスは、場所を取得してサーバーに送信するよりも多くのメモリを消費しますか?

注: ジオフェンスの数は 100 を超える可能性があるため、その場合はここに投稿されたソリューションを使用できます

4

1 に答える 1

1

私は似たようなことをしましたが、BLEを使用しました。私のアプローチは、すべてのジオフェンスとトークンを取得し、Retrofit2でそれを消費するバックエンドでRESTful APIを作成することでした。そのため、ユーザーが近くにいるかどうかを確認するために、簡単な操作を行いました(ビーコンがない場合もあります) :

for (int i = 0; i < latitud.length; i++) {
        dest.setLatitude(latitud[i]);
        dest.setLongitude(longitud[i]);
        dist = me.distanceTo(dest);
        if (dist <= 200) {
            Toast.makeText(this, "Near of " + lugares[i]+ " get a reward!", Toast.LENGTH_LONG).show();
        }
    }

ここに例を残し、その他の例は私の git アカウントに残します。よろしくお願いします。 https://github.com/AlbertoMobileApps/SimpleLocationExample

于 2017-01-24T16:39:27.790 に答える