Unity中獲取移動設備GPS信息


代碼控制打開權限以及獲取經緯度:

public string gps_info = "";
public int flash_num = 1;

public float n;
public float e;

public IEnumerator StartGPS()
{
// Input.location 用於訪問設備的位置屬性(手持設備), 靜態的LocationService位置
// LocationService.isEnabledByUser 用戶設置里的定位服務是否啟用
if (!Input.location.isEnabledByUser)
{
this.gps_info = "isEnabledByUser value is:" + Input.location.isEnabledByUser.ToString() + " Please turn on the GPS";
}

// LocationService.Start() 啟動位置服務的更新,最后一個位置坐標會被使用
Input.location.Start(10.0f, 10.0f);

int maxWait = 20;
while (Input.location.status == LocationServiceStatus.Initializing && maxWait > 0)
{
// 暫停協同程序的執行(1秒)
yield return new WaitForSeconds(1);
maxWait--;
}

if (maxWait < 1)
{
this.gps_info = "Init GPS service time out";
}

if (Input.location.status == LocationServiceStatus.Failed)
{
this.gps_info = "Unable to determine device location";
}
else
{
this.gps_info = "N:" + Input.location.lastData.latitude + " E:" + Input.location.lastData.longitude;
this.gps_info = this.gps_info + " Time:" + Input.location.lastData.timestamp;

n = Input.location.lastData.latitude;
e = Input.location.lastData.longitude;
yield return new WaitForSeconds(100);
}
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM