Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 14 Next capture
2021 2022 2023
2 captures
12 Jun 22 - 14 Jun 22
sparklines
Close Help
  • 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
2

Answer by loughrank · Feb 23, 2018 at 03:59 PM

I'm also using this code sample from the Unity documentation, however, it always returns a zero for all values when testing on iOS, Android, via Remote or directly in the Editor.

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
1

Answer by Kettch · Mar 01, 2017 at 07:16 AM

I had the same problem, then i thought about checking Android Studio settings, i was only running Android 7.1 Components (API Level 25).

My unity remote works on a S5 too @mihoci (API Level19)

i'm Downloading all sub-versions to 4.4 (just to be sure)

still not working....

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
1

Answer by stephenmutua · Mar 07, 2018 at 01:53 PM

Hey. Did anyone find a solution to the above. I have all the APIs but I'm still stuck at enabling location service.

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
1

Answer by russpatterson · May 13, 2018 at 04:11 PM

I found the same problem. Input.location.isEnabledByUser is flaky in Unity version 2017.3.0f3 it always starts out saying false and sometimes changes it's mind. I found that if the status is already running, e.g. "Input.location.status == LocationServiceStatus.Running" then you can just start using the gps data. It seems like writing a plugin to access the gps chips is the way to go.

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
1

Answer by JohanLoredo · Feb 22, 2019 at 03:59 PM

Hello, I had a similar problem using the same sample code; in my case, it turned out that my app didn't request permission upon initialization, so there were two ways to solve it: 1) To manually enable the permission from your app configuration on your phone. 2) Use the information on this link https://docs.unity3d.com/Manual/android-RequestingPermissions.html to check if the user has given permission and ask for it in case they haven't. Hope this helps.

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 kojic_a · Apr 03, 2019 at 09:10 AM 0
Share

Thank you, the solution 1) worked for me :)

  • 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.

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

Do unity3d have GPS interface? 1 Answer

adding gps google map in my app in unity3d 0 Answers

Detect car acceleration with device motion sensors and GPS 0 Answers

GPS not working the same in every device (android-ios) 0 Answers

App asking for Camera permissions but not Location permissions? 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