Giter VIP home page Giter VIP logo

geocaching4locus's People

Contributors

arcao avatar hadatko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

geocaching4locus's Issues

different date for logs (Locus vs GC site)

discussion on Locus GetSatisfaction site

https://getsatisfaction.com/locus/topics/different_date_locus_vs_gc_site#reply_8824276

discovered info:
data comming into Locus over API are already with wrong date. This is logcat when parsing data from API from cache mentioned on GetSatisfaction site

05-07 14:39:09.016: W/PublicLibWrapper(24869): parse date:2012-05-04T19:36:49Z, Sju1
05-07 14:39:09.016: W/PublicLibWrapper(24869): parse date:2012-04-29T17:06:10Z, krajicekp
05-07 14:39:09.024: W/PublicLibWrapper(24869): parse date:2012-05-01T15:59:12Z, lienka
05-07 14:39:09.024: W/PublicLibWrapper(24869): parse date:2012-05-02T17:40:39Z, junior299
05-07 14:39:09.024: W/PublicLibWrapper(24869): parse date:2012-04-27T08:28:02Z, muslik1

CRASH: NPE after click on Cancel button during Logging in

It seems the task object is not initialized. :(

StackTrace:

java.lang.NullPointerException
at com.arcao.geocaching4locus.authentication.AuthenticatorActivity$1.onClick(SourceFile:99)
at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:159)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:143)
at android.app.ActivityThread.main(ActivityThread.java:4196)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)

Direct Pocket Query Download in Geocaching Addon

Hi out there,

i have a feature request:

on my desktop I use GSAK, which supports downloading the created PQs from Geocaching.com using the API.

I think this would be a nice feature for the Locus Geocaching Addon, too.

Eclipse:

Hello,
i have some difficults to import your project on eclipse.
Thank you.

Incorrect check for "Is periodic updates enabled" state

In one of latest changes in Locus API was introduced new system for handling requests to Locus - this was done, to prevent requesting information from incorrect Locus version.

Enable Live map in main menu

Check is done in LiveMapNotificationManager - line 191.

Seems that result is based on previously set parameter by this method

ActionTools.isPeriodicUpdatesEnabled(mContext);

Unfortunately this method is deprecated. It use unknown Locus version and because of it, it search for first available and get parameters from it. In case, user has Locus Free and Locus Pro at once, you cannot be sure, which version returns.

Recommended way is to get valid LocusInfo object by this method in same class

public static LocusInfo getLocusInfo(Context ctx,
                                     LocusUtils.LocusVersion lv)
                             throws RequiredVersionMissingException

Required version may be created

from existing request from Locus by

public static LocusUtils.LocusVersion createLocusVersion(Context ctx,
                                                         Intent intent)

or by simple

public static LocusUtils.LocusVersion getActiveVersion(Context ctx)

Which return currently running Locus (true in most cases)

build.gradle

Thank you for your quick response.
Others errors messages like them:

compileDebugNote: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

:compileReleaseNote: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

Note: there were 157 duplicate class definitions.

Warning: can't write resource [META-INF/LICENSE](Duplicate zip entry [geocaching-api-1.5.15.jar:META-INF/LICENSE])

Warning: can't write resource [META-INF/NOTICE](Duplicate zip entry [geocaching-api-1.5.15.jar:META-INF/NOTICE])

CRASH: A maximum of 30 Trackable logs allowed.

In version 1.4.1.2 is bug in a limit for downloading trackables that can user configure in preferences. Also by the description this parameter mean something different than what written in preferences (trackable count vs. trackable log count).

Version: 1.4.1.2

StackTrace:

com.arcao.geocaching.api.impl.live_geocaching_api.exception.LiveGeocachingApiException: A maximum of 30 Trackable logs allowed. (115)
at com.arcao.geocaching.api.impl.LiveGeocachingApi.checkError(SourceFile:489)
at com.arcao.geocaching.api.impl.LiveGeocachingApi.searchForGeocaches(SourceFile:154)
at com.arcao.geocaching4locus.service.SearchGeocacheService.downloadCaches(SourceFile:239)
at com.arcao.geocaching4locus.service.SearchGeocacheService.run(SourceFile:101)
at com.arcao.geocaching4locus.service.AbstractService.onHandleIntent(SourceFile:123)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:59)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.os.HandlerThread.run(HandlerThread.java:60)

Preferences (only important part):
downloading_count_of_trackables=50

Better OAuth error reporting

In some cases in OAuth process occurs error and tokens aren't received. Instead of it Groundspeak OAuth server returns error message in oauth_error_message parameter. It would be good to show this error message than Sign-post default "Request token or token secret not set in server reply. The service provider you use is probably buggy.".

Single button for Live map on/off

Hi there,

is it possible to have the button for the "Live Map-on/off" as a single button in the Locusmap-right-side (as a shortcut)?
This would be very nice!

Thanks and greetings
Frank

Login doesn't work on some phones

Based of GetSatisfaction: https://getsatisfaction.com/geocaching4locus/topics/login_problem-jnz1n

On some phones (mostly from Samsung) is problem with browser and custom protocol scheme used to forward OAuth login result back to G4L. It seems the browser don't handle URL through Android Core so G4L don't get intent with login result and browser display error about the URL with custom protocol scheme.

Solution is to use WebView in an activity like Facebook OAuth login, see https://github.com/facebook/facebook-android-sdk/blob/master/facebook/src/com/facebook/widget/WebDialog.java.

limit of 6000 loaded caches reached

Currently this app loads a lot of caches, so I reached the limit of 6000 caches after 4,5 hours. I didn't use other apps like GSAK.
Do other users have the same experience?

Keep corrected cache coordinates from GSAK

GSAK can store corrected coordinates as a cache location. When is that cache imported to Locus (via GPX) and updated using G4L, the cache loose all information about corrected coordinates including changed cache position.

Locus can handle that cache and add overlay dot to cache icon. In Locus API this state is saved in computed field.

New Cache Icon for caches with corrected coordinates

At the geocaching.com website it is possible to change the coordinates for mystery and multi-caches. So the headercoordinates are corrected to the final-coordinates.
Would it be possible to add a new icon for solved mysteries on the map? And please show only mystery caches with the corrected coordinates. At the moment solved mystery caches are on the map at the old headercoordinates.

Add terrain filter

Requested by Olestas:

Could you please add terrain filter to downloading caches? So it would be possible to exclude caches e.g. over 4 terrain or over 3.5.

Bad usability when user isn't logged in

Source: E-mail from Locus team

We did a few usability tests and one of the problems which we encountered is the process of log in.

Situation:

  1. Install add-on
  2. Start it and choose download to Locus
  3. You get an error "Invalid username/password" (which is understandable).

Nevertheless, it would be possible to show dialog instead of this error with text like: "To continue, it is necessary to log in to Geocaching.com" with Login button, which redirect to login page...

Live map support

Locus supports since version 2.0.1.4 live map. So why not use it?

TODO:

  • Create broadcast receiver for menion.android.locus.PERIODIC_UPDATE action.
  • Add a service which will be responsible for downloading caches and sending them back to Locus
  • Some setting to turn on/off live map from G4L side. Maybe icon menu like in Locus.

Update some Caches at once

If you donwloaded some caches half a year ago
You need to click on every cache and click on update cache to see
Whether the cache is available anymore.

A function / button to update all caches or all caches in a selected area would be very nice.

Greets

Nearest caches without existing POI in Locus

Hello

With a long press anywhere on a map to display an address then search the nearest caches, the phone tries to activate the GPS (instead of using the location that was selected). If the activation is stopped, the Geocaching4Locus popup uses a bad location. I think this behaviour appeared in late 2013. If doing the same thing by selecting an existing Locus POI, the behaviour is correct (search for nearest caches around the selected location).

Import geocache by entering cache ID

From GetSatisfaction: https://getsatisfaction.com/geocaching4locus/topics/download_geocache_by_cache_id

In the Locus forums, I sometimes read request like "how can I add a geocache to Locus by geocache ID".

Currently, the easiest way is to open http://coord.info/gccodehere in browser and let geocaching4locus do the import job.

That's o.k. for me, but sometimes hard to find for new users...

I suggest an option to import a cache by ID directly in Locus, e.g. using a new button in this (geocaching4locus's) screen:
gc4l_screenshot

Display cache after click on a link

From GetSatisfaction (https://getsatisfaction.com/locus/topics/geocaching4locus_display_cache_after_click_on_a_link):

Hello,

right now, when I have a link on a geocache (e.g. http://coord.info/GCXXXXX) and I click on it, I get an option to "Import cache" into Locus -> this is nice... However, I think, it would be much better to have option "Display cache" instead of "Import cache". Now, when I click on some link, I must choose "Import cache" and then choose the category where I want to import it... But I do not want to import it! I just want to display it....

I think it would be better to have the option "Display cache" and then when I decide in Locus that I want to import that cache, I would simply press "+" to add it to my POIs.

What do you think?

skubko

field notes with shorten text

after i store my log to device as field note and then upload it to the geocaching site everytime i'm surprised how and why i can see logs like:
"#1483, 2014-08-02 at 10:28

T"
even if i have pre-filled note:
"#{c}, {t}

TFTC"
and every log is different sometimes is missing just one letter from the end and sometimes there are missing more letters.

Update some Caches at once

If you donwloaded some caches half a year ago
You need to click on every cache and click on update cache to see
Whether the cache is available anymore.

A function / button to update all caches or all caches in a selected area would be very nice.

Greets

Nearest caches fast download

Hi, I'd suggest redesigning the popup window for downloading nearest caches so it would be possible to choose amount of caches and tick button do download just basic data without going to the setting menu. Just these two options would be very useful. It would be much faster than going to the settings menu and search for it.
What do you think about it?

More Live Caches

Would it possible to show more than 40 Live-Caches in the map. Other apps like Neongeo are also able to do this with the official Geocaching.com API.

Create user waypoints from personal cache note

Requested by e-mail from Tomáš Vyhlídka:

C:geo supports creating user waypoint from a personal cache note (only for premium GC users) and it would be good if G4L supports it too.

The both coordinates must be written on one line to work it properly and if some text is perpending them, the text could be the name of waypoint (configurable?) or the default "User waypoint xxx" instead.

Format:

[name of waypoint]: N49 54.312 E13 17.542 - coordinates must contains N/S and W/E to detect latitude and longitude.
N49 54.312 E13 17.542 - there must be used name "User waypoint xxx", because nothing prepends the coordinates

Note: The coordinates must be possible to write easily without degree, minutes and seconds symbols.

IOException: exceeded content-length limit of xxx bytes

This bug came from one of users:

11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): java.io.IOException: exceeded content-length limit of 397 bytes
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at org.apache.harmony.luni.internal.net.www.protocol.http.RetryableOutputStream.write(RetryableOutputStream.java:58)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:164)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at geocaching.api.impl.LiveGeocachingApi.callPost(LiveGeocachingApi.java:261)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at geocaching.api.impl.LiveGeocachingApi.searchForGeocachesJSON(LiveGeocachingApi.java:129)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at com.arcao.geocaching4locus.service.SearchGeocacheService.downloadCaches(SearchGeocacheService.java:260)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at com.arcao.geocaching4locus.service.SearchGeocacheService.onHandleIntent(SearchGeocacheService.java:151)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:59)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at android.os.Handler.dispatchMessage(Handler.java:99)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at android.os.Looper.loop(Looper.java:143)
11-06 22:33:03.896 E/Geocaching4Locus|LiveGeocachingApi(2956): at android.os.HandlerThread.run(HandlerThread.java:60)

Download spoiler images together with cache

Requested by TwoWheeler89 (http://forum.asamm.cz/viewtopic.php?p=10374#p10374):

During downloading a cache would be good to download spoilers (if it's set in preference) too and store them in Locus/data/geocaching directory (or one subdirectory like Locus/data/geocaching/dataToday) with index html file named GCxxxx.html. Locus will automatically add new "Spoilers" tab to a cache dialog with content of this html file.

See this forum post: http://forum.asamm.cz/viewtopic.php?p=7280#p7280

Geocaches are displayed twice (stored and from Live Map)

When I use Pocket Querries, I have saved caches on my device. But when I use the option to view Live Caches and I select then one cache I see the two same caches to select. One which is saved and the other, I load online. Would it be possible to make only one to select. It would be nice, if the saved caches would be actualized instead.
2013-01-20 19 57 12

filter search for cache size

I do not like to import micros. So it would be perfect if I could filter not only for difficulty, terrain and type but also for the cache size.

Thank you for your great work!

Add support for OKAPI (for OpenCaching National Sites)

Currently there are 4 opencaching sites which use OKAPI:

It's hard to say without knowing the code, but I believe it might be easy to add support for OKAPI in your extension. All opencaching sites use exactly the same API, and it is well documented (see any of the sites above).

So, my questions are:

  1. Did you ever plan to support multiple geocaching sites in your extension?
  2. If your architecture was designed for one data-source only, then would it be easier to fork your project and replace the data-source, rather than adding support for multiple data sources? What do you think?
  3. If you think [2] would be relatively easy, would it be okay if I forked your repository and tried to do that? (There's only a minor chance I will have time to finish this, but I would like to have your permission before I even try.)
  4. Or, perhaps, if the answer to [1] is yes, then maybe you would be interested in supporting OKAPI in your mainstream branch? I am the main developer of OKAPI, so in case of any problems, I could add any methods you may require.

In case you didn't hear about OC - OpenCaching National Sites are NOT affiliated with opencaching.com (which is a Garmin initiative). We are opensource and much older than OC.com.

Android - incorrect newline symbol logged at geocaching.com

During logging of a cache, if I enter the new line on the phone, it's logged at the geocaching.com as '\n'. Example of such log (copy and paste from gc.com):
"Found! :-) Nice place, but can be dangerous.\nSome text there.\nTFTC! :-)"

IMHO it should be logged at the geocaching.com in such way that it is displayed correctly, so in our example:
"Found! :-) Nice place, but can be dangerous.
Some text there.
TFTC! :-)"

Thanks for analysis!

Setup:

  • Android 2.3.5
  • HTC Desire HD
  • SwiftKey 4.1.2.147
  • Locus Pro 2.12.0
  • Plugin 1.5.2.2

Regards,
Szymon

G4L crash in handleIntentOnPointAction when is called from Locus 1.15.0

Error came as crash error in Android Market.

Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.arcao.geocaching4locus/com.arcao.geocaching4locus.MainActivity}: java.lang.RuntimeException: Parcel android.os.Parcel@4051b3b0: Unmarshalling unknown type code 6619252 at offset 356
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1816)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1837)
at android.app.ActivityThread.access$1500(ActivityThread.java:132)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1033)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:143)
at android.app.ActivityThread.main(ActivityThread.java:4196)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@4051b3b0: Unmarshalling unknown type code 6619252 at offset 356
at android.os.Parcel.readValue(Parcel.java:1913)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getString(Bundle.java:1034)
at android.content.Intent.getStringExtra(Intent.java:3583)
at menion.android.locus.addon.publiclib.LocusIntents.handleIntentOnPointAction(LocusIntents.java:97)
at com.arcao.geocaching4locus.MainActivity.onCreate(MainActivity.java:93)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1780)

build.gradle

Hello,
i have a problem with gradle.
error message: coud'nt find property 'debug' in line 78

Thank you for all.

Better reporting error while converting GUID to cache code

At the moment the service can only report error "Cache not found". It would be good to report why the cache didn't found.

Testing GUIDs:
Archived - 123560b0-6ecc-4ac8-9b6a-fdf4c255b0f0
Unpublished - 5c88821c-4d56-49a9-99b2-c51c97d45ff9

Allow to search for caches by name

Many caches are part of a series, for example "In 80 days around the world", which are 80 Caches which all have a common name, only a special suffix like "day 4" and so on. Not only for these, but generally it would be nice to have the possibility to search for caches by name. I know I can do the same with pocket queries, but I find the Locus-interface far superior to the geocaching.com website. Just yesterday I found a cache on the livemap, forgot to import it for offline use and then at the village where the cache was, the live-map stopped working (probably because I was on Edge newtwork only). I remembered the name of the cache, but couldn't download it :o(

Ideally, you'd only get a list of matching names and can then select the caches that you want, but if that's too hard to do, simply importing all that match into a folder like the current "search"-function (which is only location-based) does, would be nice, too.

User can't login via OAuth when device has wrong time or timezone

In case the user has wrong time or timezone on android device, the OAuth login process fails with server side error:

  • This message has a timestamp of 8/23/2012 10:28:32 AM, which is beyond the allowable clock skew for in the future.
  • The message expired at 8/23/2012 6:18:50 PM and it is now 8/24/2012 1:06:10 AM.

In most case this is caused wrong timezone when is not used DST (Daylight saving time) and time is increased manually with hour. Or when user is in abroad and time is corrected using time instead of timezone.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.