Commit graph

10958 commits

Author SHA1 Message Date
Eric House
9374260c59 try to address one-time assert
and remove it from shipping build
2019-03-20 15:07:04 -07:00
Eric House
a7da0e33bb show the stalled-service alert based on pref
Allow users to turn the notification on; otherwise skip it. And set
the default on/off based on DEBUG type of build.
2019-03-20 14:53:08 -07:00
Eric House
b5714fadf8 add a bool resource matching BuildConfig.DEBUG
I want to be able to have some boolean prefs default based on whether
it's a DEBUG build.
2019-03-20 14:29:37 -07:00
Eric House
52f839e899 fix null procptr crash in jni
I can't reproduce this, but while testing recovery from DatagramSocket
recreation in RelayService got enough to know that somehow a timer's
procptr's not set. So test before calling, and log instead of crashing.
2019-03-20 13:33:30 -07:00
Eric House
b03f767e6c get another DatagramSocket when ours goes bad
Fix longstanding bug triggered by something as simple as putting device
into and out of airplane mode. Once the class-variable socket was
created it was never replaced. Now respond to exceptions that mean it's
useless and set it to null so existing logic will recreate it.
2019-03-20 13:33:21 -07:00
Eric House
2916e1d6cb tweaks to logging and imports; should have no effect 2019-03-20 07:23:34 -07:00
Eric House
1eccbebb95 report inability to get locks in travis debug builds 2019-03-19 09:15:27 -07:00
Eric House
1291310a0c track all pending service Intents; warn of stalls
When enqueuing Intents for any of the three services, cache the
Intent. When onHandleWork() is called, remove the equivalent cached
intent. Then periodically check for intents that have been stored for
more than 60 seconds, and post a Notification alerting user to
stall. The user will likely have noticed that messages aren't flowing,
so this will simply explain the problem. Includes an "email author"
button.
2019-03-19 08:39:16 -07:00
Eric House
f5afba8fd4 cleanup and refactor
Move some work into superclass where instrumentation can be added to
greater effect. And remove from BTService an earlier attempt (at stall
detection.)
2019-03-19 08:16:30 -07:00
Eric House
99c6e38ff0 refactor: new constructor for common case 2019-03-19 08:06:16 -07:00
Eric House
21b0815923 make msgNo reflect srcID, not channelNo
It's more useful if it's per-device unique within a game. (Just used for
debugging now, so no impact on anything.)
2019-03-18 10:55:40 -07:00
Eric House
89cb97c3bb additions for debugging
toward tracking down relay stalls, log a bit more in resend process and
add UI to support an option where there's no reliance on
polling (i.e. FCM only)
2019-03-17 21:17:36 -07:00
Eric House
aa2564114a replace assert with logging 2019-03-17 18:26:43 -07:00
Eric House
bb9facfbd2 Merge remote-tracking branch 'weblate/android_translate' into android_translate 2019-03-17 14:01:06 -07:00
Eric House
0be3bb192d Wait for ACK to remove stored message
Bringing in a change that's been on the production relay for a while but
apparently didn't pass tests locally. Now it does.
2019-03-17 11:52:48 -07:00
Eric House
9bde550455 apply ordering and limit correctly 2019-03-17 11:38:00 -07:00
Eric House
0b0e4af977 up version strings 2019-03-16 21:11:55 -07:00
Eric House
efb6a93d7c add missing AndroidManifest.xml files for new variants 2019-03-16 20:53:16 -07:00
Eric House
9ae77bce13 use latest nbsplib 2019-03-13 14:38:03 -07:00
Eric House
e01bda552e change to work with changed NBSProxy API 2019-03-13 14:35:28 -07:00
Eric House
29ebcf0c20 API's changed 2019-03-13 14:35:23 -07:00
Eric House
61395f07e9 use the latest NBSProxy dev release 2019-03-12 07:05:51 -07:00
Eric House
91ff2175f6 add logging of CurGameInfo
Trying to track down why some player names aren't preserved
2019-03-12 07:05:12 -07:00
Eric House
79aab3ead1 override toString() for debugging 2019-03-11 10:46:56 -07:00
Eric House
21debf7af6 add missing consts 2019-03-11 10:32:22 -07:00
Eric House
7e06512e54 change emacs compile command (in comment)
No point defaulting to something that no longer exists
2019-03-11 09:57:16 -07:00
Eric House
080d14a02b fix symlinks post rename 2019-03-11 09:51:23 -07:00
Eric House
3c4cc6a1b7 fix broken symlink 2019-03-10 20:38:11 -07:00
Eric House
ab491ebcb4 change name of variant -- it's not the main one anymore 2019-03-10 19:25:57 -07:00
Eric House
f8623cd407 check if permission in manifest
I got bitten when creating a new variant leaving the permission out of
the manifest but using a config flag to claim it was there. Better to
have just one place to configure that. So check for presence in the
manifest and, for now, assert that that matches the isBanned flag. Soon
the isBanned flag can be removed.
2019-03-10 19:15:30 -07:00
Eric House
116f3f4274 add retain()/release()
Seems to work but needs testing!
2019-03-10 18:42:49 -07:00
WaldiS
5e3bedc3eb
Translated using Weblate (Polish)
Currently translated at 1.8% (14 of 764 strings)
2019-03-10 18:03:01 +01:00
Eric House
21158faa71 up version code to try another gps release 2019-03-09 17:38:18 -08:00
Eric House
5cc57919f5 add new Variant for github & sourceforge releases
and log permission check results
2019-03-09 14:07:06 -08:00
Eric House
2744649e48 one less malloc 2019-03-09 12:12:47 -08:00
Eric House
de7be6cf44 tweak UI with longer string 2019-03-09 09:20:37 -08:00
naofum
dd36d393e0 Translated using Weblate (Japanese)
Currently translated at 75.9% (580 of 764 strings)
2019-03-09 08:52:05 -08:00
Peeter Angelo
acd35c103b Translated using Weblate (Czech)
Currently translated at 14.5% (111 of 764 strings)
2019-03-09 08:51:20 -08:00
Eric House
1f195ad1e6 tweak string 2019-03-09 08:17:50 -08:00
Eric House
565f688252 don't capture lock stack in release builds 2019-03-09 06:59:31 -08:00
Eric House
085963b76c unlock lock we won't be keeping
This might fix the occasional game permalock.
2019-03-09 06:40:04 -08:00
Eric House
c2441c30f4 fix a likely-fluke NPE with a test
It seems impossible for the menu to be getting update without init()
having been called, but that must be what happened. To check for null.
2019-03-08 22:14:57 -08:00
Eric House
f890d74e63 fix invite not coming up after perms warning dismissed
or when it's not shown at all because the not-again checkbox is checked
2019-03-08 21:56:16 -08:00
Eric House
d914706ef8 cleanup 2019-03-08 21:32:52 -08:00
Eric House
f934ac3c5c up version of NBSProxy lib 2019-03-08 20:11:19 -08:00
Eric House
dbed7e29cc fix npe 2019-03-08 17:40:27 -08:00
Eric House
eb33d18390 add not-again checkbox to remove-sms-from-game alert
Some people will decide to leave SMS comms in while I look for an
alternative. Maybe. Don't show them the same alert every time they open
the game. In the process removed what seemed to be a duplicate ivar.
2019-03-08 14:18:56 -08:00
Eric House
f05c6862f9 refactor alerts code
Should be no change here, but the goal's to make it easier to mix
functionality, e.g. adding notagain checkbox to other types.
2019-03-08 13:29:30 -08:00
Eric House
0df3889030 don't show sms-failed toast when permission is banned 2019-03-08 12:58:00 -08:00
Eric House
3fd9a066cb move constant 2019-03-08 11:16:21 -08:00
Eric House
5a8e21468f add Overrides as part of sanity check 2019-03-08 11:10:16 -08:00
Eric House
21220bc839 include name of game being deleted 2019-03-08 09:46:27 -08:00
Eric House
7f405a3a40 update web page (esp. fix style for device display) 2019-03-08 09:20:48 -08:00
Eric House
0972d3d99f cleanup 2019-03-08 09:20:22 -08:00
Eric House
69046c5f2f give new variant the right icons 2019-03-08 07:18:49 -08:00
Eric House
2ba8d83cf6 update changes log 2019-03-07 18:30:52 -08:00
Eric House
d55916f583 oops 2019-03-07 18:18:50 -08:00
Eric House
ce2ec03d3e relay tracks variantCode int, not string 2019-03-07 18:12:26 -08:00
Eric House
fbba6f3247 add a case for Signal as default SMS app 2019-03-07 17:40:16 -08:00
Eric House
5eb29a0c21 display the Banned alert from invite-choice dialog 2019-03-07 09:13:50 -08:00
Eric House
a91c0e2cbf add non-mobile number if user confirms
Fix logic error that didn't proceed with the number-add in the
non-mobile case.
2019-03-07 08:39:20 -08:00
Eric House
a561899021 try various recipes for launching SMS app
There's no one way to launch an SMS app with a ready-to-send
invitation. So try the two that work on our two phone/app combinations,
iterating until startActivity() succeeds. The code's set up to have new
recipes added easily.
2019-03-07 08:06:07 -08:00
Eric House
188a5d8387 post a tip/warning when new invite-by-sms-app chosen 2019-03-07 07:48:31 -08:00
Eric House
ef27ffaa02 send an int code rather than a name 2019-03-07 06:28:46 -08:00
Eric House
8a4d4ec5bf warn when 'sms data' selected in build where it's banned 2019-03-06 22:38:53 -08:00
Eric House
a79b18b9b7 more tweaks 2019-03-06 14:31:44 -08:00
Eric House
7ffa2ed4fc remove logging 2019-03-06 14:05:15 -08:00
Eric House
d3abd31220 new method stub to fix fdroid build crash 2019-03-06 13:26:05 -08:00
Eric House
51c2ecd48a script to build all possible variants 2019-03-06 13:19:55 -08:00
Eric House
ac8ceec656 removing permissions from the Play Store version 2019-03-06 13:09:42 -08:00
Eric House
6267eb9c4f use NBSProxy if available
Lots of work dealing with banned permissions (SEND_SMS and
RECEIVE_SMS). First, if they're banned and NBSProxy is installed, just
use it as if the permissions had been granted. When it's not there,
explain at various points where users will otherwise be confused: when
they try to invite using data sms, or when they open a game that already
uses it.)
2019-03-06 12:39:08 -08:00
Eric House
7e4313e071 support setActionPair() for okOnly alerts too 2019-03-04 10:45:15 -08:00
Eric House
17e8844378 cut some logging 2019-03-04 07:43:28 -08:00
Eric House
91b7cf8bd9 remove misplaced assert
It's an error to use an env with the wrong thread, but it IS possible
for more than one thread to be associated with the same env. So don't
assert to the contrary.
2019-03-03 21:01:23 -08:00
Eric House
eeddd8d7cb fixing refcounting and adding logging
Seeing the occasional crash and trying to plug leaks that might be
contributing. I think I fixed the Gameptr.finalize() assertions I've
been seeing forever but the thread match assertion remains. Logs will
help catch that.
2019-03-03 14:40:07 -08:00
Eric House
cec379bd02 remove logging and reformat: no change 2019-03-03 14:11:44 -08:00
Eric House
1575d70ab9 return supported types as list, not set
I was seeing them displayed in different orders where I want to control
the order instead.
2019-03-03 14:07:40 -08:00
Eric House
8336a338f8 use constant APPLICATION_ID instead of method call 2019-03-03 11:39:10 -08:00
Eric House
cae90c4c07 remove some logging 2019-03-03 11:39:10 -08:00
naofum
09affc451d
Translated using Weblate (Japanese)
Currently translated at 75.9% (580 of 764 strings)
2019-03-03 11:17:45 +01:00
Eric House
4cbfde6d95 make setActionPair work for confirmThen alerts too
(To be used shortly)
2019-02-28 16:03:46 -08:00
Eric House
415ce0f5a2 recast SMSService as a JobIntentService
Didn't think it was required, but once the app started getting messages
in the background it stoped working or crashed. Changes are minimal
because this service isn't responsible for receiving messages: it
doesn't have the long-lived threads of the BT and Relay services.
2019-02-27 07:25:33 -08:00
Eric House
20cd99f73b add debug-only checking for thread safety
Lots of threads call the smsproto code now so the existing check was
failing. Replace it with one that ensures that only one thread at a time
is running the code. Debug-builds only.
2019-02-27 07:13:38 -08:00
Eric House
5207de564a Let's test this jitpack stuff on Travis
Importing a library but not using it yet
2019-02-26 21:33:39 -08:00
Eric House
b0d3383c28 more data with my SMS
And catch an exception starting SMSService in background
2019-02-26 21:27:31 -08:00
Eric House
6eb6038935 make result -1 if will otherwise trip asserts. 2019-02-26 18:46:55 -08:00
Eric House
ac0fe68ee0 logging toward finding who's sending or reporting 0 2019-02-26 15:03:55 -08:00
Eric House
5f167e2a5e pull nbs port-checking over from NBSProxy 2019-02-26 14:43:26 -08:00
Eric House
d1881e7fc4 logging toward tracking a rare assertion failure 2019-02-26 14:33:18 -08:00
Eric House
33491a5376 add extra explanatory text to phone number invite dialog
Set different expectations based on whether the invitation's by NBS or a
launch of the messaging app.
2019-02-26 12:25:17 -08:00
Eric House
c78a3afb36 distinguish between NBS and SMS
What I've been calling SMS is now "data sms" (or "nbs", in
code). There's a new way of inviting, called "User Sms" or somesuch,
that launches the user's SMS app with a URL and phone number, much like
email (save that no addressing is required by the inviter.) This new way
won't be involved in the ban on SMS permissions. (But play by NBS is
still awesome and will stay where it can.)
2019-02-26 11:28:37 -08:00
Eric House
22711e75a5 that's already done 2019-02-23 20:55:31 -08:00
Eric House
92dde5332a put back the nbs port 2019-02-23 17:32:03 -08:00
Eric House
b6551abd2f some cleanup, e.g. to assert my signals are valid 2019-02-22 21:25:26 -08:00
Eric House
97eb6018d9 comment out dead code I keep reading 2019-02-22 19:59:55 -08:00
Eric House
956e9c540f fix valgrind-noted empty array cruft. 2019-02-22 19:29:56 -08:00
Eric House
1e0db1fca7 fix defines and compile that then broke 2019-02-22 17:55:09 -08:00
Eric House
e1d05207b4 new version code to replace bad upload 2019-02-21 21:33:57 -08:00
Eric House
bad3274c9c fix broken noSMS variant
needed SMS permissions in a new xw4 manifest
2019-02-21 21:30:59 -08:00
Eric House
283bf2e285 remove SMS_BANNED stuff for now 2019-02-21 11:28:13 -08:00