• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Xmann1 · Feb 22, 2017 at 08:28 AM · gps

Unity location service not working

I am trying to make a location based app and i cant seem to get it to work. I used the example code here: https://docs.unity3d.com/ScriptReference/LocationService.Start.html but the code does not work, after a while i discovered that the problem was that location service was not enabled. How do i fix this? My code:

PS i am using android

 using UnityEngine;
 using System.Collections;

 public class Location : MonoBehaviour
 {
     IEnumerator Start()
     {
         // First, check if user has location service enabled
         if (!Input.location.isEnabledByUser)
             print("Location service is not enabled!");
             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();
     }
 }
Comment
Add comment · Show 1
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image mihoci10 · Feb 24, 2017 at 09:46 AM 0
Share

I have the exact same problem. I dont think its the code though. $$anonymous$$aybe you have to enable something in unity build settings or maybe its eve an error in the phone. (Im using samsung galaxy S5)

11 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by deba124 · Nov 12, 2019 at 11:15 AM

Here is the solution,

if you have two scenes in your app, then attach the location service script at the splash scene also, and remember: omit the first condition from your app

if (!Input.location.isEnabledByUser) {

          print("Location service is not enabled!");
          yield break;

} comment the avobe mentioned section. NOW YOU ARE GOOD TO GO.

also remember: attach the location service script at the splash scene and also at the scene where you want to fetch lattitude and longitude okay.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by mihoci10 · Apr 20, 2019 at 03:14 PM

If anyone is still being bugged with this issue (like i was), here you have a script that i tried to make today. Surprisingly after a year and a half of issues this actually works.

 using UnityEngine;
 using UnityEngine.UI;
 
 public class gps : MonoBehaviour
 {
     public Text lat;
     public Text lon;
 
 
     void Update()
     {
         if (!Input.location.isEnabledByUser)
         {
             Debug.LogError("Location not enabled");
         }
         else if (Input.location.status != LocationServiceStatus.Running) {
             Input.location.Start(1, 0.1f);
         }
         Debug.LogError(Input.location.status);
         
         lat.text = Input.location.lastData.latitude.ToString();
         print(Input.location.lastData.latitude);
         lon.text = Input.location.lastData.longitude.ToString();
         print(Input.location.lastData.longitude);
     }
 }

Hope it helps someone :)

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image seriyvolk83 · Jun 01, 2020 at 10:41 PM 0
Share

It's the same. It does not fix the issue.

avatar image
0

Answer by sumit9236 · Oct 02, 2019 at 03:33 PM

You want to open location service android panel and get callback of GPS through below plugin -

https://assetstore.unity.com/packages/tools/integration/native-solution-android-153330

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by Tiberius1701 · Jul 14, 2020 at 04:03 PM

Thanks, Deba124 - that did the trick!

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by simingtu · Sep 21, 2020 at 04:22 AM

// First, check if user has location service enabled if (!Input.location.isEnabledByUser) print("Location service is not enabled!"); yield break; yiled break, is not included in {}

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
  • ‹
  • 1
  • 2
  • 3
  • ›

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

17 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

How to import GPS location coordinates in to Unity ? 1 Answer

GPS and Rotation in computer from iphone? 1 Answer

How to track user's speed and distance using GPS in Unity? 0 Answers

call method google maps from android studio into unity? 0 Answers

How to enable location dialog? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges