omkarmoghe / Pokemap

A native Android client to map the Pokemon around you!
http://pokemapgo.xyz/
GNU Affero General Public License v3.0
1.01k stars 315 forks source link

Improve notifications #176

Open peter6006 opened 8 years ago

peter6006 commented 8 years ago

I didnt download the latest version so im writing this only by seein the screenshots, now you have the Pokemon name, the time remaining and the distance, what about the orientation? (north, south...) that way a user can have the Pokemon GO! app running and the notifications will indicate him where to go whitout minimice the app.

Giggitybyte commented 8 years ago

I think this is a good idea. However, it wouldn't really be useful unless the user's position were updated every so often (See #167).

rohanjain1 commented 8 years ago

Yeah, sorry, but what you're suggesting essentially requires the app to be running constantly with high frequency fetches. We'd prefer to avoid that. Also, an orientation N/S/E/W ... wouldn't be too useful. you could walk right past the fella and never see him. But i do like the idea of not having to minimize the app for getting nearby pokemon.

dev will deliberate on this.

Sejadis commented 8 years ago

good solution not to have to minimize the pogo app maybe would be to make it as an overlay? kinda like some messanger apps do :
there is a bubble somewhere on your screen as an overlay to the app currently open and if you tap it it will expand wihtout closing or minimizing the other app

rohanjain1 commented 8 years ago

we have thought about this extensively.. While the floating chatheads appeared as nice novetly items, they have been going out of use.. ref, FB messenger app It's a mixed bag actually, on one hand we add a bit of convenience for one app, but then again, misbehaving floaters can be hell for the user. That's kinda also why we chose to go with notifications instead.

peter6006 commented 8 years ago

How about a service running on background? i was implementing that several days ago, every 5-10 seconds the service check the coordinates of the user and using the PokemonGo Object, it will notify about the nearest pokemon. You say that you prefer to avoid the app running on background with high frequency fetches, but what if i was on a walk without Pokemon GO! and this one open and sudenly a f****ng Dargonite appears near me? i want to know it, so i think that will be usefull for this app to run on background and notify me about this Dragonite. You could use a service and fetch the map every 30 seconds, to save the coordinates and the PokemonObject i use "SharedPreferences", the "bad" thing is that the java Class needed for the coordinates also has to run on background.

rohanjain1 commented 8 years ago

You're essentially asking if we will create a clone of the official pokemonGo app + perks. We shall not. I find the official app to be a humongous battery drain and criminally inefficient. For a small convenience feature of directions, i can't in good conscience support continuous GPS as well as network calls that too in a background thread. Also, not just some one or two java classes, the entire protobuf decoding framework will need to exist in the background as well. And that bugger gave us hell initially because it has 20k + methods. It's not a question of whether it can be done, or even any involved complexity.. the question is about whether we "should" do such a thing.

As for the usecase you mentioned, we do intend to address it. While the app is in the foreground, and we have GPS lock, we'll be updating the pokemon near your current location.

chrosey commented 8 years ago

what about the posibility to get the coordinates of that particular pokemon and start a navigation intent? so you don't have to rescan your own position unless you want to?

rohanjain1 commented 8 years ago

@chrosey that actually sounds nice, but not sure how many people will use it. We're showing the map in the app already, and the exact location you need to get to.. i'm sure a user can find his way from the map :P

chrosey commented 8 years ago

@rohanjain1 at least we hope they'll do :P but this feature would be nice because navigation can tell you how many time you'll need to get there. Suppose this feature scanning an area about 1 km away. With help of an navigation you would know if you can get that far in 10 minutes (with Bike orwhatelse...)

peter6006 commented 8 years ago

I think thats is a great idea, like, "oh, a Dragonite on the map, but is 750m away and im in a new city" ~clicks on Dragonite~ ~Google maps Navigation opens with the route to Dragonite~

xyber3364 commented 8 years ago

Alright now that I ran outside doing some tests let me weigh in.

  1. The service does run in the background and does poll your location and it does hit the niantic servers for fresh data. That is why it is optional and off by default
  2. @peter6006 if you set the refresh rate to 5-10 seconds. You don't need to know the cardinal direction because the distance from you to the pokemon will start shrinking very quickly (unlike the steps in the offical). I just tested its very quickly to get to 20-30meters where the pokemon actually shows up.

Now my vision for this service was to make something like the poke-radar that runs in the background that you can use in the official app until they make theirs better and on its own. The goal was so I didnt need to keep scanning the map through out the day at my desk or having to flip back and forth between apps. One of the things i would like to make it do is have a set range of the scan, respect any filtering you do in the app, and indications if you are getting closer/farther from the Pokemon in question.

Tolsi commented 8 years ago

Also Notification Service works not reliably for now. After the phone falling asleep, it will no longer updates the information. It would also be nice to see the Pokémon icon next to its name.

beta-tank commented 8 years ago

Maybe add notification mode, where each found pokememon shows in new push? I'm try use current system with miband but service has only one permanent push, and miband spam me vibration about this notification which never dies. I think this is good idea to add optional push notification for each found pokememon.