言語: 日本語
  • C#
  • JS
  • Boo

スクリプト言語

お好みのスクリプト言語を選択すると、サンプルコードがその言語で表示されます。

LocationService.Start

public function Start(desiredAccuracyInMeters: float = 10f, updateDistanceInMeters: float = 10f): void;

Description

ロケーションの更新を開始します。最後の位置座標になります。

Input.location.lastData により取得できます。 サービス開始時にロケーションデータは直ちに送信されません。 現在のサービスステータスを確認するには コード中で Input.location.status をチェックして下さい。 desiredAccuracyInMeters - サービスの精度をメートル単位で指定。 500 メートルなど より高い値に設定することで GPS チップをオンにしておく必要がなくなるため バッテリー容量を節約します。5-10 メートルの値にすることでより精度が得られます。 デフォルトは 10 メートル。 updateDistanceInMeters - Input.location プロパティが更新されるための最小距離として どれだけ横方向に移動する必要があるかをメートル単位で指定します。 500 メートルなど より高い値にすることでオーバーヘッドが少なくなります。デフォルトは 10 メートルです。

function Start () {
        // First, check if user has location service enabled
        if (!Input.location.isEnabledByUser)
            return;
        // Start service before querying location
        Input.location.Start ();
        // Wait until service initializes
        var maxWait : int = 20;
        while (Input.location.status
               == LocationServiceStatus.Initializing && maxWait > 0) {
            yield WaitForSeconds (1);
            maxWait--;
        }
        // Service didn't initialize in 20 seconds
        if (maxWait < 1) {
            print ("Timed out");
            return;
        }
        // Connection has failed
        if (Input.location.status == LocationServiceStatus.Failed) {
            print ("Unable to determine device location");
            return;
        }
        // Access granted and location value could be retrieved
        else {
            print ("Location: " + Input.location.lastData.latitude + " " +
                   Input.location.lastData.longitude + " " +
                   Input.location.lastData.altitude + " " +
                   Input.location.lastData.horizontalAccuracy + " " +
                   Input.location.lastData.timestamp);
        }
        // Stop service if there is no need to query location updates continuously
        Input.location.Stop ();
    }