Ich verwende Standortdienste in einem Unity 3D-Spiel. Ich verwende dieses (leicht modifizierte) Skript, das ich in der Unity-Dokumentation nur zu Testzwecken gefunden habe. Hier ist das Skript:Unity darf den Standort nicht verwenden - Windows 10
using UnityEngine;
using System.Collections;
public class TestLocationService : MonoBehaviour
{
IEnumerator Start()
{
// First, check if user has location service enabled
if (!Input.location.isEnabledByUser)
print("no");
yield break;
// Start service before querying location
Input.location.Start();
// Wait until service initializes
int maxWait = 20;
while (Input.location.status == LocationServiceStatus.Initializing && maxWait > 0)
{
yield return new WaitForSeconds(1);
maxWait--;
}
// Service didn't initialize in 20 seconds
if (maxWait < 1)
{
print("Timed out");
yield break;
}
// Connection has failed
if (Input.location.status == LocationServiceStatus.Failed)
{
print("Unable to determine device location");
yield break;
}
else
{
// Access granted and location value could be retrieved
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();
}
}
Als ich das Skript ausführen, es soll meine Lage drucken. Allerdings denkt es, dass Standortdienste nicht aktiviert sind (ich verwende Windows 10) und druckt nur "Nein" vor dem Anhalten aus. In meinen Standorteinstellungen ist der Standort aktiviert.
Warum Unity ist nicht erlaubt, meine Lage zu benutzen?
Es ist nicht ein Kippschalter für die Einheit. Gibt es eine Einstellung, die ich in Unity aktivieren muss? –
können Sie versuchen http://www.tenforums.com/attachments/driver-hardware/50767d1438836176t-find-my-device-wifi-feature-set-up-page-says-off-28806d1438836176-location-service-turn- off-windows-10-location_on_for_device-1.png – Aleks