DanielBarnett714 / AddressToGPS

MIT License
34 stars 11 forks source link

Lookup does not work anymore #13

Open adrium opened 5 years ago

adrium commented 5 years ago

The lookup does not work amymore simce a few days. The following error occurs:

This page can't load Google Maps correctly.

See rendering in screenshot

screenshot

ghost commented 5 years ago

Seconded, this has been an issue for a couple days. Does anyone know of similarly intuitive replacements?

mddvul22 commented 5 years ago

The problem is that Google now requires a key to use the geocoding api that this app uses. And you need to supply a credit card and have a google cloud account to get a key. The card isn't charged if the account tied to the api doesn't have more than some set number of hits per month. But I seriously doubt the Daniel wishes to tie his credit card to an untold number of people using this app. The best bet seems to 1) create your own key and build the app for your own personal use, with the api url modified to include your key, or 2) build the app on your own, using another api that doesn't require a credit card, like Mapquest's, maybe.

I tried option 1 on Friday, signing up for a google account and getting a key. I built the app, using Android Studio, but unfortunately the app still isn't working for me. Haven't had a chance to dig deeper.

mddvul22 commented 5 years ago

Wanted to post another update here. I tried again to get option 1, above working today, and succeeded. Here what I had to do: 1) create the google account required for getting a geocoding api key. Add this key value to the url string in AddressToGPS-master/app/src/main/assets/AddressToGPS/index.html. Then you need to build the apk and install it. I had done all of the above on Friday, and it still didn't work for me. But today, in addition to having previously allowed my key to use the Geocoding API, I needed to also allow it to use the Places API and the Maps Javascript API. (this is done through your cloud.google.com dashboard console.) Now, my own rebuilt copy of the AddresstoGPS app is again working.

mddvul22 commented 5 years ago

One final problem that I should note: you can't restrict key access to your self-built AddressToGPS apk. The geocoding api doesn't allow that. Unfortunately, this API only allows key restrictions by IP! This is unfortunate and means that you would have to run your app from a known IP address to reduce the possibility of key theft. Unfortunately, I'm almost always needing this app when I'm traveling. :-(

Will need to seriously look into the Mapquest api, I'm afraid. That api key doesn't require it being tied to a credit card. So, if the key is stolen, it isn't as problematic.

nchristensen commented 5 years ago

With a brief search, here are the limitations of the free tiers of several APIs (not sure if all have geocoding and which might require a credit card):

Apple - https://developer.apple.com/maps/mapkitjs/ 25,000 free service calls per day Bing - https://docs.microsoft.com/en-us/bingmaps/rest-services/ 50,000 transactions per day https://www.microsoft.com/en-us/maps/product ESRI - https://developers.arcgis.com/pricing/ 1 million free transactions per month (~30,000 per day) HERE - https://developer.here.com/plans Free tier limited to 5000 monthly active users MapQuest - https://developer.mapquest.com/plans 15,000 transactions per month TomTom - https://developer.tomtom.com/store/maps-api 2,500 free transactions per day

matoro commented 5 years ago

This is rather unfortunate. I think a good approach given the simplicity of this app is to require the user to provide their own API key. Microsoft looks like a good place to start: https://docs.microsoft.com/en-us/bingmaps/rest-services/locations/find-a-location-by-query

Jomme5 commented 5 years ago

Hi all.

I made a new app based on bingmaps. My first project in Android, but works well. I'm not willing to pay 25$ registration fee on Google play, and for now; it's not opensource(fdroid), so I will distribute it via this the link below. In a few days, I will put it on Amazon-apps-store. Please give me some feedback and, hopefully not, information according bugs.

https://github.com/Jomme5/AddressToGPSII/tree/master scroll down to scroll down to or click release(s)

mddvul22 commented 5 years ago

@Jomme5 Thanks for moving on this. You are a step ahead of me. I was working on something that uses mapquest. How does the accuracy/completeness of Bing Maps compare to Google Maps and Mapquest? I have a web page built that uses the Mapquest API to get longitude/latitude coordinates, but I can't figure out how to get that integrated into an app. I'm not much of a developer and I've never done any Android development.

Also, wondering if it might be better to build apps without a key but have an interface where a user can supply their own key. This might be a better route for whatever API we settle upon? It is probably more likely to get into F-Droid that way, also.

Poussinou commented 5 years ago

Hi, F-Droid contributor here. We moved this app to the archive as you can see here, just to let you know ;)

k3b commented 5 years ago

as a replacement you can use https://github.com/gjedeer/Acastus which is based on openstreedmap adress data and available on fdroid

mddvul22 commented 5 years ago

I've tried Acastus and wanted it to work. But unfortunately, it is woefully incomplete. It only knows about one address in my entire town.

Jomme5 commented 5 years ago

For those who don't trust bare-naked apk downloads, you can get AddressToGPS II on Amazon.com. cons: you have to have an Amazon-account and download/install their Appstore-app. pro's: updates will happen automatically like in any other store-app.

Other functionality? Suggestions?

k3b commented 5 years ago

@mddvul22 :

It only knows about one address in my entire town.

Does Openstreet web page find the street?

Can you add your example data to https://github.com/gjedeer/Acastus/issues/7 or add a new issue?

nchristensen commented 5 years ago

@Jomme5

Other functionality? Suggestions?

Just tried out the apk on Google Drive. It is looking fairly solid. In sometimes the results are hard to read when they are in front of the gray portion of the background image. It also might be useful to show the gps coordinates in case someone wants to copy and paste them.

glitchphan commented 5 years ago

I tried the linked apk but it would not install on my Android 6.0.1. Maybe yours was built requiring higher version? :(

The idea to allow for your own API key would be awesome to implement even in the existing app so we can use our own Google key.

Jomme5 commented 5 years ago

New version AddressToGPSII x More readable results. x Copy to clipboard when long press on item. x Set app-compatibility to 21(v5.0 Lollipop) instead of 26. Successful simulation on Lollipop.

If you get an 'app not installed' error-message it may be you have to (temporary) turn off 'play proctect' in Google Play Store for successful installation. (I'm not verified for Google.)

glitchphan commented 5 years ago

You should start an official thread for it somewhere :). It installed for me now, but doesn't find anything specific. Always says network error.

mddvul22 commented 5 years ago

I do not seek to diminish the work that @Jomme5 is doing here, but as I've continued to think about this, I'm beginning to question whether an app is even needed for this functionality. All one really needs is a single web page that you load on your phone, into its browser -- that asks for an address and then connects to the map api of your choice, and converts the address to latitude/longitude. If you build the web page to show the coordinates in a constructed geo: hyperlink, then tapping on the geo: link will load the coordinates into OsmAnd~. Same thing the app is doing, but simpler.

mddvul22 commented 5 years ago

@k3b not wanting to get into an argument here, but have you looked at the address2gps code here? It does the exact same thing that a simple web page stored on the local filesystem of your mobile device does. The only thing different about a simple web page, is that it doesn't have an app shell wrapped around it. Both the app and a simple webpage have to make an API call to the source and return long/lat. They are doing the exact same thing. If you build your own web page, you can be sure that it uses as few bytes as needed. Furthermore, you can use the map source of your choice. Plus, the web page I've built uses an api key that was generated with a fake name and disposable email address.

Now, if you are referring to Acastus, then that is obviously different. Acastus is a nice idea, and I sincerely hope it works out. But, respectfully, your comments about Acastus in this thread are off-topic.

Jomme5 commented 5 years ago

You should start an official thread for it somewhere :). It installed for me now, but doesn't find anything specific. Always says network error.

Good idea: https://github.com/Jomme5/AddressToGPSII/tree/master From now on issues, discussions concerning AddressToGPS||, suggestions,... can take place on the git-rep-link. Concerning network error: I have no idea: no issues on my phone(8.0) nor on the simulation(5.1) If you know how to work with adb, send me a logcat from when the error occur on the github-branch 'issues.' (Drag & drop a file in the editbox)

Jomme5 commented 5 years ago

@glitchphan: i've updated AddressToGPSII once again. There is apparently network issue's only on Android 6 -devices. You can download latest version for a small fee on Google Playstore if you search under 'address to gps' or https://play.google.com/store/apps/details?id=com.cornmo.co_osm.co_osm&hl=en