Eric House
c4ac96ede8
fix NPE (race condition around deletion?)
...
Check for null. Not sure how I got it there, but there's little harm in
failing silently.
2018-12-09 18:26:59 -08:00
Eric House
95c11eec07
don't try to connect to non-phones
...
When a device is paired but not a phone (or computer, which is how
tablets identify), don't bother trying to scan it.
2018-12-09 18:26:59 -08:00
Eric House
051aeba57c
fix crash by not creating Handler until on UI thread
...
Receiver is created and installed by a non-UI thread sometimes so can't
create the Handler there. onReceive() is called on an ok thread however
so create it there on demand. Fixes crash that showed when receiving
relay messages in background.
2018-12-09 18:26:59 -08:00
Eric House
68ae9790b4
launch service from ACTION_ACL_CONNECTED
...
Fire up the receiver thread, and start the service, on receipt of this
ACTION (if they're not already running.) On start, the service takes
over the thread and begins dispatching messages. Works to launch the app
when it's not running and in most cases, though messages received before
the service launches are currently dropped, things seem to work.
2018-12-09 18:26:59 -08:00
Eric House
3dbec328af
fix NPE
...
It happened when too many timers were firing, but I think this code's
better anyway.
2018-12-09 18:26:59 -08:00
Eric House
271d43808f
kill foreground service on a timer
...
reset timer on receiving meaningful data and on moving app to
background. If it fires and we're in background, kill the service.
(There's currently no way to restart it except bringing the app into the
foreground. Fixing that's coming.)
2018-12-09 18:26:59 -08:00
Eric House
c8fe57cc78
make listener thread static
...
remove relationship with BTService so it can be created independently.
2018-12-09 18:26:59 -08:00
Eric House
e984b10fea
remove option of disabling foreground service
...
Since it's not going to be running all the time any more.
2018-12-09 18:26:59 -08:00
Eric House
d94821feb4
btinvite dlg shows results of scan not all paired devs
...
Moving toward a better BT invite experience: use BTService to scan for
ourselves on all paired devices, and only allow selecting from among
those on which we're running (and so likely to respond to an
invitation.)
2018-12-09 18:26:59 -08:00
Eric House
ece125c5dc
change foreground-service notification text
2018-12-09 18:26:59 -08:00
Eric House
1e42156f4a
remove assert
...
Constructor is called from JNI code and so not on the UI thread.
2018-12-09 18:26:59 -08:00
Eric House
faeaa60f87
replace junit's assert with my own
...
And have it log before throwing. Should be easier to track down asserts
coming from jni callbacks this way than in the C code.
2018-12-09 18:26:59 -08:00
Eric House
eaae9ed1c1
Always call startForeground after startForegroundService
...
It's an error to e.g. stopSelf() without having called startForeground,
so do it even when about to exit.
2018-12-09 18:26:59 -08:00
Eric House
0a0bd54ec7
include new permission to install third-party apks
...
Fixed upgrade of Dbg variant not working on Oreo.
2018-12-09 18:26:59 -08:00
Eric House
8bd4613c2a
include X86 native library again
...
It's a pain to have to change code to run in Genymotion, and to have
upgrade not testable using Genymotion. Consider verting this change
before next release.
2018-12-09 18:26:59 -08:00
Eric House
50f448bb1f
fix to contact relay in foreground on Oreo+
...
Background still needs a lot of work.
2018-12-09 18:26:59 -08:00
Eric House
ff2192f659
fix path name string causing JNI crash on emulator
...
And catch NPE that also seems to be emulator-only
2018-12-09 18:26:59 -08:00
Eric House
9eec5c37ef
fix path name string causing JNI crash on emulator
2018-11-29 09:30:14 -08:00
Eric House
91828cb851
add more google()
...
still trying to fix travis builds
2018-11-28 21:21:48 -08:00
Eric House
b2bf3a6e80
move google() above maven (to fix travis?)
2018-11-28 20:38:43 -08:00
Eric House
ce3cb62f02
add reversed version of btservice notification icon
...
For the Dbg variant to match its normal notification icon.
2018-11-28 19:35:24 -08:00
Eric House
fc699caaa8
ensure channel id always setup before use
2018-11-28 19:27:32 -08:00
Eric House
7eb278033a
revert change setting notifiction priority low
2018-11-28 19:20:43 -08:00
Eric House
843c95e7ae
new icon for omnipresent BTService notification
2018-11-27 11:27:18 -08:00
Eric House
988ac55eaa
tweak apk-cmp script
2018-11-27 10:06:38 -08:00
Eric House
0dbc976561
Merge branch 'android_branch' into making-it-work-with-api26
2018-11-24 13:19:34 -08:00
Eric House
88fe2739c1
fix crashes (NPE and RelayService trying to run in background)
...
Still need to figure out what RelayService does. It needn't run for long
except where GCM isn't present.
2018-11-24 13:04:14 -08:00
Eric House
eb6831ea12
add bt-in-background preference
...
And clear it from a button in the alert that's posted when the
foreground service notification is selected.
2018-11-23 09:47:18 -08:00
Eric House
f8e15bd3a0
add explanation for foreground service notification
2018-11-23 08:21:52 -08:00
Eric House
2ba5982ddf
use foregroundService on devices that can handle it
...
And show the notification regardless. Tested only on pre-Oreo device so far.
2018-11-22 15:18:57 -08:00
Eric House
6177914213
add lifecycle lib (events only logged only so far)
2018-11-22 08:13:49 -08:00
Eric House
dfcac132c8
up strings for new translations-only release
2018-09-22 14:21:04 -07:00
Eric House
6bafbecd75
toward service working on Oreo
...
Did a bunch of stuff to inherit from JobIntentService and use enqueue(),
but doesn't work yet. OS is unable to bind, with this error:
09-21 17:20:51.678 3050 3050 W JobServiceContext: Time-out while trying to bind 2edee28 #u0a277/1111 org.eehouse.android.xw4dbg/org.eehouse.android.xw4.BTService, dropping.
2018-09-22 09:22:37 -07:00
Eric House
24440230ba
refactor so startService can change (no behavior change yet)
2018-09-21 15:21:04 -07:00
Eric House
dbbeeb7519
Merge branch 'android_translate' into android_branch
2018-09-13 21:31:09 -07:00
Eric House
62dc885922
Merge remote-tracking branch 'weblate/android_translate' into android_translate
2018-09-13 21:29:44 -07:00
Eric House
45600a295a
use NotificationChannel to work on O and beyond with SDK 26
...
Notifications don't work on Oreo without this change, which includes a
new Support Library in order to get NotificationChannel and creates and
uses that as docs describe. Requires that MinSDK be raised from 8 to 14,
which may lock some users out. It *should* be possible not to do this in
the fdroid variant since their app store doesn't requires SDK 26, but
I'll look at that later.
2018-09-13 19:49:49 -07:00
Eric House
6f6c3238d4
Merge branch 'android_branch' into making-it-work-with-api26
2018-09-13 14:11:30 -07:00
Eric House
54f3e57f7f
Merge branch 'android_branch' into making-it-work-with-api26
2018-09-13 10:36:26 -07:00
naofum
13f617b0b5
Translated using Weblate (Japanese)
...
Currently translated at 74.1% (556 of 750 strings)
2018-08-27 02:42:19 +02:00
Bernard Massot
28b784fdb4
Translated using Weblate (French)
...
Currently translated at 98.4% (738 of 750 strings)
2018-08-26 21:37:54 +02:00
Eric House
dfa308c1f5
pull timestamp out of DB as a long
...
for better formatting, eventually.
2018-08-07 09:01:17 -07:00
Eric House
02781c5113
use different (older) crashlytics (untested)
...
For some reason my laptop wouldn't build without this change. No idea
what happened to the newer version I was using or if the change
works (beyond compiling). Should be easy to find the change later if
it's a problem.
2018-08-07 08:57:14 -07:00
Eric House
9fb8671ef0
Merge branch 'android_branch' into android_translate
2018-08-04 11:14:54 -07:00
Markus Enzenberger
5d729094c3
Translated using Weblate (German)
...
Currently translated at 99.0% (743 of 750 strings)
2018-08-03 09:38:07 +02:00
Eric House
d23307f0ef
up strings for new release
2018-08-02 06:28:09 -07:00
Eric House
3d7d1b8ffd
don't call tile picker more than once
...
Some devices, including my Moto, are apparently calling server_do() more
than most. When the game's supposed to be asking the user to pick tiles
that resulted in stacked TilePickAlerts. The stack of these
sending (taken together) too many picked tiles to the game made it
crash. So modify server to have only one pending tile-pick request going
at a time. Because the server can't know when the user dismisses the
alert in Android and so won't post again, respond to the dismissal by
closing the game. Reopening will put it in a state where the tile picker
can get called again.
2018-08-01 20:30:51 -07:00
Eric House
0cc7d21ecb
fix race-condition NPE by inspection
2018-08-01 08:08:36 -07:00
Eric House
6a58a08bca
remove redundant specifier
2018-08-01 07:50:34 -07:00
Eric House
8286c9c116
new script for when release builds required
2018-08-01 07:48:02 -07:00
Eric House
f1c2eb79d4
remove x86 from jni; that chip's dead on Android
2018-08-01 07:37:33 -07:00
Eric House
e0c6621bfe
remove assert: messages not for me are common
2018-07-31 00:26:11 -07:00
Hosted Weblate
a44db6c942
Merge branch 'origin/android_translate' into Weblate
2018-07-31 08:56:08 +02:00
Eric House
803b4ff0f3
cleanup: load/initialize only when first needed
2018-07-30 08:00:00 -07:00
Eric House
bf06d4b4c2
fix not sending ACK_INVITE
...
Logic error meant it was never sent. Now always send on receipt of a
well-formed invitation, even if e.g. the recipient's missing a wordlist
and the game can't be started immediately.
2018-07-30 07:37:20 -07:00
Eric House
a23777bade
move byte[]<->NetLaunchInfo convert into the class
2018-07-27 07:44:02 -07:00
Eric House
2f10712379
revert to old invite data format
...
Had inadventently changed how NetLaunchInfo was transmitted, and crashed
on receiving from older builds. Fix to not crash, and then fix to send
and recieve in the old format.
2018-07-27 07:24:27 -07:00
Joan Montané
2c9d619f71
Translated using Weblate (Catalan)
...
Currently translated at 96.6% (723 of 748 strings)
2018-07-27 10:35:25 +02:00
Eric House
e637f49b95
include port and proto
...
Pretty sure couldn't have played against an older build without this.
2018-07-26 21:13:09 -07:00
Eric House
dfd4a3f6f6
put the api-26 changes back
...
lost in a rebase apparently
2018-07-26 19:16:50 -07:00
Eric House
9ddc6e4b89
Move transision of cmd and gameid and port (pending) into smsproto
...
common code, simplifying and unifying what the platform-specific code
has to do. Seems to work.
2018-07-26 07:50:16 -07:00
Eric House
a65498c132
add missing Overrides -- in one file
2018-07-26 07:24:23 -07:00
Eric House
70b22f7d11
revert to sdk-23
...
Too much breaks with the upgrade and I don't have time to deal.
2018-07-21 21:36:51 -07:00
Eric House
affb13207e
up sdk version in the second place
2018-07-20 08:24:48 -07:00
Eric House
e1ba676a8e
Merge branch 'quick-bt-fix' into android_branch
2018-07-19 07:17:15 -07:00
Eric House
723e7d7953
update changes to include translations included
2018-07-19 06:57:21 -07:00
Allan Nordhøy
6abff25946
Translated using Weblate (Norwegian Bokmål)
...
Currently translated at 55.2% (413 of 748 strings)
2018-07-19 06:54:32 -07:00
Joan Montané
5ced000c8c
Translated using Weblate (Catalan)
...
Currently translated at 94.3% (706 of 748 strings)
2018-07-19 06:54:14 -07:00
Eric House
a9701525b7
up version string for new release
2018-07-19 06:47:18 -07:00
Eric House
fcefa9ca97
dismiss the BT invite progress thing on success
...
Not sure how this broke in the reorg of XWService stuff, but let's be
agressive about dismissing that thing.
2018-07-19 06:33:05 -07:00
Eric House
4450a8d56c
fix NPE by inspection
...
I'm not sure how it happened -- race condition -- but it's harmless to
drop the action when it does.
2018-07-19 06:33:00 -07:00
Eric House
7cb00b6266
fix assertion: return a f*ing sink
...
Messed this up in February apparently.
2018-07-19 06:32:48 -07:00
Eric House
b0cf3a795c
fix NPE by inspection
...
fix crash reported by user. Looks like a race on the way out so check
for null first.
2018-07-19 06:32:36 -07:00
Eric House
d40b8b7cad
dismiss the BT invite progress thing on success
...
Not sure how this broke in the reorg of XWService stuff, but let's be
agressive about dismissing that thing.
2018-07-19 06:29:59 -07:00
Eric House
e1fec99860
fix NPE by inspection
...
I'm not sure how it happened -- race condition -- but it's harmless to
drop the action when it does.
2018-07-19 06:29:03 -07:00
Eric House
67d09a79b5
fix assertion: return a f*ing sink
...
Messed this up in February apparently.
2018-07-19 06:07:26 -07:00
Eric House
a3fb82ebc4
Merge branch 'android_branch' into android_translate
2018-07-18 22:30:58 -07:00
Eric House
a3ac3c4c8a
fix NPE by inspection
...
fix crash reported by user. Looks like a race on the way out so check
for null first.
2018-07-18 22:26:26 -07:00
Eric House
807fe8633f
add forgotten file
2018-07-17 08:46:39 -07:00
Eric House
84f636cbd5
always resend via SMS when opening game
...
It's done for other comm types too, and is necessary to get linux test
script to pass once I make SMS delivery unreliable. But it may duplicate
the tickle that Android's doing and result in duplicate messages: test.
2018-07-17 07:05:33 -07:00
Eric House
8f9c9e0623
fix crash around uri permissions for new OS version
...
Use a FileProvider with all the necessary xml changes to pass apk to
installer without crashing it or myself.
2018-07-17 07:02:36 -07:00
Eric House
276ef38108
use sdk26 -- will be required soon anyway
2018-07-15 10:33:09 -07:00
Eric House
2d8ac995b7
add test case where (fake) sms messages never arrive
2018-07-14 15:43:42 -07:00
Joan Montané
cc714a96cb
Translated using Weblate (Catalan)
...
Currently translated at 94.3% (706 of 748 strings)
2018-07-14 12:35:09 +02:00
Eric House
352d87a327
use stream to take apart untrusted message safely
...
add new stream getters that return false if reach EOS and use them to
exit early and safely if incoming SMS msg is misformatted. I'm getting
random garbage meant for other apps perhaps.
2018-07-13 22:41:52 -07:00
Eric House
019cc628e4
fix crash figuring md5sum of null bytes
...
Just return null String
2018-07-13 22:35:44 -07:00
Eric House
89ec7987e6
move test to after db's inited to avoid crash
2018-07-13 18:20:56 -07:00
Eric House
5d6c743087
fix (I hope) null jni array dereference
2018-07-13 18:20:05 -07:00
WaldiS
cf24b1e4a0
Translated using Weblate (Polish)
...
Currently translated at 0.2% (2 of 748 strings)
2018-07-13 21:41:10 +02:00
Eric House
669acdcd19
log checksum of messages into smsproto
2018-07-13 07:39:11 -07:00
Eric House
c45c9cd809
read format spec outside assert
...
since the read inside goes away in release builds!
2018-07-13 06:59:57 -07:00
Eric House
b8c2cd1dd5
don't assert when a stray message wanders in
2018-07-12 20:20:04 -07:00
WaldiS
2d53673ae5
Added translation using Weblate (Polish)
2018-07-12 20:57:43 +02:00
Eric House
df8558e071
delete partial messages when count mismatches
...
Had an assert fire when a message ID was reused with a different count.
It was likely because of messages crossing between two variants, but
still, fix: delete what's been saved so far when a new count shows up.
2018-07-12 08:13:32 -07:00
Eric House
bd1cc4276b
cleanup and variable rename (no code changes)
2018-07-11 07:33:36 -07:00
Eric House
3477bcf7b6
fix release-build scripts for new gradle output paths
2018-07-11 06:48:42 -07:00
Eric House
af0ddaa0f7
up version code and strings
2018-07-11 06:41:36 -07:00
Eric House
6bab91803d
fix release builds
...
(broken since 091299c
2 months ago)
2018-07-11 06:38:54 -07:00
Allan Nordhøy
3959c73a86
Translated using Weblate (Norwegian Bokmål)
...
Currently translated at 55.2% (413 of 748 strings)
2018-07-11 00:39:41 +02:00
Eric House
95ac66370c
fix off-by-one preventing delayed messages from sending
2018-07-10 07:08:57 -07:00