Commit graph

6182 commits

Author SHA1 Message Date
Eric House
e590db5f3f merge in the db part of 82c39489f0
(android_groups branch, local only right now), but not the UI part
since it won't make the next release.
2012-11-26 08:05:05 -08:00
Eric House
9130c8da50 download and install upgrade .apk files where possible. Download is
via the existing DictImportActivity, which should also be used for
dict upgrade downloads to keep the UI consistent.
2012-11-26 07:40:45 -08:00
Eric House
302ad04ef9 use recommended intent filtering to allow Crosswords to launch in
response to http URLs, removing need for custom scheme and one step
from the invitation process.
2012-11-26 05:41:42 -08:00
Eric House
6f3881d53d don't crash on malformed invite URL 2012-11-26 03:08:54 -08:00
Eric House
63b29a2cb2 Revert "add read-only debug prefs giving GCM and relay device IDs."
This reverts commit 5019d3960b.
2012-11-25 13:55:02 -08:00
Eric House
f82e5bd0e9 add code to deal with Amazon, which I falsely identified as having
broken custom schemes.  I'm leaving it in, unreachable, to have a record.
2012-11-25 12:30:25 -08:00
Eric House
d7bb869a5b rewrite to present a link rather than redirect, to attempt to present
the link only on Android devices, and to encourage users to email me
if I'm wrong about their not being on a device.
2012-11-25 10:39:46 -08:00
Eric House
5019d3960b add read-only debug prefs giving GCM and relay device IDs. 2012-11-25 09:58:46 -08:00
Eric House
7d6e393007 use a different missing-dict explanation string when the name of the
inviter isn't known (relay case)
2012-11-25 09:58:14 -08:00
Eric House
2a1c028268 deal with case where relay invite arrives for a language that device
doesn't have support for.  Dictionary name is now included in the
invite, and if that's present offer to download it then launch game.
For previous versions that don't include the dict name, offer to
download from the language (though that isn't tested yet.)
2012-11-25 08:54:46 -08:00
Eric House
b2e329f670 pass along wl (dict) param if present 2012-11-25 08:53:15 -08:00
Eric House
a3e0d0ca1e recover from situation where game is created in response to an
invitation for a lang for which it has no dicts installed.  Shouldn't
happen, but on relay still can.
2012-11-22 13:03:32 -08:00
Eric House
9659f810dc work even if ENV variable unset 2012-11-22 08:20:08 -08:00
Eric House
0bea58b128 make it possible to build without knowing the GCM sender ID. 2012-11-22 08:13:06 -08:00
Eric House
daf5a89a0e remove unused imports (no code change) 2012-11-21 21:49:42 -08:00
Eric House
04d839868d on launch to handle an invite for a game that seems to already exist,
instead launch that game -- for better feedback.
2012-11-20 06:24:23 -08:00
Eric House
b244adae1b fix transposed words 2012-11-20 06:22:29 -08:00
Eric House
f149391838 cleanup 2012-11-20 06:13:29 -08:00
Eric House
face24e915 make invite email text a bit easier to read 2012-11-20 06:10:57 -08:00
Eric House
cb70858583 up strings for next release (still a while out!) 2012-11-20 04:14:25 -08:00
Eric House
2779139e75 add columns using data as well. Like pref commit, this does not change behavior. 2012-11-17 10:20:14 -08:00
Eric House
9ad41d5a3a use String[] data to build table-creation queries rather than huge
inline string concatenations.
2012-11-17 10:14:55 -08:00
Eric House
416db91312 experimental: always post notification on new moves received rather
than giving GamesList a chance to launch game directly.
2012-11-16 07:31:52 -08:00
Eric House
cefc13a2cd Docs say should allow GCM to reregister on app upgrade. And that the
registrar takes care of storing devid.  So app version when
registration arrives, and get from registrar except after an upgrade.
2012-11-15 21:44:56 -08:00
Eric House
9a4a8c7b26 use static to avoid querying OS for version over and over. 2012-11-15 21:41:51 -08:00
Eric House
f70a5bc6ee add getAppVersion() 2012-11-15 21:24:54 -08:00
Eric House
e1bc9876dd add to-do 2012-11-15 21:23:31 -08:00
Eric House
bda193029e add constructor in order to pass SENDER_ID to parent constructor,
as docs say to do
2012-11-15 21:14:45 -08:00
Eric House
f64de16ce3 catch and discard all exceptions that come when initing GCM. Fringe
devices may do anthing at that point.
2012-11-15 07:03:32 -08:00
Eric House
5afd93c5f5 fix NPE on Kindle 2012-11-15 06:42:27 -08:00
Eric House
694857dd4e add, but disable with compile flags, ability to mark sent messages
with a timestamp rather than delete them.  Plan is to experiement with
this as a way of keeping devices from sending too many identical
messages when GCM's in use -- since constraints on the msgs table will
not allow identical messages to be added.
2012-11-15 06:25:22 -08:00
Eric House
c847ec127e add and use function that does formatted printing to a std::string so
query buffers can no longer overflow.
2012-11-15 06:15:44 -08:00
Eric House
5463535265 don't increase backoff if there wasn't actually anything to send. 2012-11-14 05:42:47 -08:00
Eric House
9598ea3585 fix to compile post API change. 2012-11-13 21:32:42 -08:00
Eric House
c4df31892e Fix occasional infinite loop of devices sending and receiving the same
message over and over when getting updated by GCM.  The problem
occurred when one device had an un-ACKable initial message still in
its queue.  I call resendAll a lot, which caused that message to get
resent to the other game which then replied without being able to ACK
it so it remained to be sent again.  This would continue until users
moved forward in the game.  The fix is to add a backoff timer to
resendAll() so that it can't loop.  The timer is reset when an ackable
and new message is received, meaning there's been a change in what's
available to resend.  And since users calling resendAll manually
expect it to do something, add a force param that ignores the backoff.
seems to fix the problem (but needs a lot of testing.)
2012-11-13 21:25:03 -08:00
Eric House
cf8d30ce5d tweak logging; fix uninitialized debug-only variable 2012-11-13 21:18:52 -08:00
Eric House
ba11fcf8df don't bother checking for stream size of 0 in jni since comms does
that now.
2012-11-13 21:01:25 -08:00
Eric House
cd2550a90d Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-11-13 07:24:54 -08:00
Eric House
093fc4d1fa cleanup 2012-11-13 07:23:07 -08:00
Eric House
57ea768aaf refuse to send 0-length messages. That may happen only when the stupid
curses client calls server_initClientConnection over and over, but
reduces unnecessary messaging in that case at least.
2012-11-13 07:22:48 -08:00
Eric House
c4f5b4522e minor printing tweaks 2012-11-13 07:17:56 -08:00
Eric House
2908802017 try to make linux client mimic Android a bit better in saving after
any network activity so messages get acked more quickly.
2012-11-13 06:15:36 -08:00
Eric House
43b1e219f3 add a bit more logging to comms 2012-11-13 06:14:36 -08:00
Eric House
082e6a61f7 comment out unused command 2012-11-12 20:57:39 -08:00
Eric House
60814264e7 compile with XWFEATURE_COMMSACK turned off 2012-11-12 20:56:50 -08:00
Eric House
76c938cc67 fix to compile with API change; to drop relayid when it's rejected and
to use register with the GCM id on next [re]connect; and to not leave
variable unintialized when unable to call into java world due to being
called without context.
2012-11-12 08:03:25 -08:00
Eric House
4f3c81417d go back to logging devids for now 2012-11-12 08:01:24 -08:00
Eric House
6ca966f22a make test script and linux client mimic case where relay regid is
rejected by relay.  Client re-registers and a new relay regid is
issued.
2012-11-12 07:27:20 -08:00
Eric House
6a85661095 lots of improvements: make useful for testing with non-android clients; shelve backoff data, etc. 2012-11-10 19:31:22 -08:00
Eric House
1316ae4b67 Fix relay devid protocol to deal with case where client submits a
ID_TYPE_RELAY id that's not in the devices table (as has happened when
a device switches relay URLs during testing, but might also happen if
I have to delete an entry from the devices table.)  In that case,
return ID_TYPE_NONE to the client, which will be its clue to delete
its ID_TYPE_RELAY id and submit the platform-specific id again.

Note: android won't compile this revision thanks to util.h change
2012-11-10 15:05:44 -08:00