2017-08-10 75 views
0

我將我的項目中的.NET版本更改爲4.6,但我仍然無法使用GeoCoordinate類。 我有沒有做錯了什麼或Unity不完全支持.NET 4.6?.NET 4.6在Unity中不完全支持?

+1

的可能的複製([爲什麼我不能看到API兼容級別的.Net 4.6的選擇嗎?] https://stackoverflow.com/questions/42513782/why-cant-i-see-net-4-6-option-for-api-compatibility-level) – Serlite

回答

2

Unity可能支持所有C#6功能。它確實不是支持所有.NET 4.6 API,因爲它使用單聲道。即使使用.NET 3.5,也有很多Unity不支持的其他API,因爲Mono不支持它。

這應該是而不是是一個問題。您可以從github獲得GeoCoordinate API副本。所有你需要的是GeoCoordinate.csGeoPosition.cs文件。

函數名稱和其他所有內容都可以與微軟的System.Device.Location.GeoCoordinate互換。當導入統​​一後initializing GPS

用法示例(如果有統一的GPS API使用):

LocationInfo gpsInfo = Input.location.lastData; 
LocationInfo gpsInfo2 = Input.location.lastData; 


GeoCoordinate pin1 = new GeoCoordinate(gpsInfo.latitude, gpsInfo.longitude); 
GeoCoordinate pin2 = new GeoCoordinate(gpsInfo2.latitude, gpsInfo2.longitude); 

double distanceBetween = pin1.GetDistanceTo(pin2);