briar issueshttps://code.briarproject.org/groups/briar/-/issues2018-09-28T09:57:20Zhttps://code.briarproject.org/briar/briar/-/issues/1352Latest version of Ripple from F-Droid doesn't trigger panic actions2018-09-28T09:57:20ZakwizgranLatest version of Ripple from F-Droid doesn't trigger panic actionsThe latest release of Ripple from the main F-Droid repo (version 0.2.2) doesn't trigger Briar's panic actions because the package isn't signed with a key we trust. However, the Ripple UI says that Briar will respond to the panic trigger.The latest release of Ripple from the main F-Droid repo (version 0.2.2) doesn't trigger Briar's panic actions because the package isn't signed with a key we trust. However, the Ripple UI says that Briar will respond to the panic trigger.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1350Nav drawer logo is broken on Android 5.12018-11-15T11:39:23ZakwizgranNav drawer logo is broken on Android 5.1The changes to the nav drawer logo in !861 seem to be triggering some rasterisation bugs on the Moto G 4G (Android 5.1):
![device-2018-07-25-165837](/uploads/3d84edc6f203234b276e1b32c080225b/device-2018-07-25-165837.png) ![device-2018-0...The changes to the nav drawer logo in !861 seem to be triggering some rasterisation bugs on the Moto G 4G (Android 5.1):
![device-2018-07-25-165837](/uploads/3d84edc6f203234b276e1b32c080225b/device-2018-07-25-165837.png) ![device-2018-07-25-165821](/uploads/d16ee97246c508c2260501e359eeb117/device-2018-07-25-165821.png)Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1348Briar does not care if bluetooth is used by other apps2020-11-16T10:36:46ZmicressorBriar does not care if bluetooth is used by other appsI have
* [X] searched for open and closed issues
----
**Steps to reproduce:**
1. Listen to music via bluetooth
2. Select logoff on Briar
**Current behavior:**
Briar switches off the Bluetooth on the device.
**Expected behavior:**
Br...I have
* [X] searched for open and closed issues
----
**Steps to reproduce:**
1. Listen to music via bluetooth
2. Select logoff on Briar
**Current behavior:**
Briar switches off the Bluetooth on the device.
**Expected behavior:**
Briar should not shutdown bluetooth, if it is used by other apps.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1342BriarService dies, but retains database key2020-11-17T16:11:35ZTorsten GroteBriarService dies, but retains database keySome time ago, I opened Briar and the app was starting the `NavDrawerActivity` strangely slow. When it came up, all contacts were offline and all plugins in the NavDrawer were also offline. They came online slowly afterwards, but the app...Some time ago, I opened Briar and the app was starting the `NavDrawerActivity` strangely slow. When it came up, all contacts were offline and all plugins in the NavDrawer were also offline. They came online slowly afterwards, but the app seemed to have been dead. The first time, I couldn't get useful logs, but just now it happened again and I could retrieve the following log.
It looks like the app was kind of restarting at 13:42 but without creating/starting `BriarService`. When I opened the app at 15:40 the service got finally started and still found the key in `AndroidDatabaseConfig`.
```
07-12 13:42:38.551 org.briarproject.briar.android I/BriarApplicationImpl: Created
07-12 13:42:38.699 org.briarproject.briar.android I/AndroidDatabaseConfig: Database directory: /data/user/0/org.briarproject.briar.android/app_db
07-12 13:42:38.721 org.briarproject.briar.android I/CryptoComponentImpl: Default SecureRandom: AndroidOpenSSL SHA1PRNG
07-12 13:42:38.827 org.briarproject.briar.android I/zygote64: Do partial code cache collection, code=29KB, data=20KB
07-12 13:42:38.828 org.briarproject.briar.android I/zygote64: After code cache collection, code=29KB, data=20KB
Increasing code cache capacity to 128KB
07-12 13:42:38.927 org.briarproject.briar.android I/zygote64: Do partial code cache collection, code=61KB, data=40KB
After code cache collection, code=59KB, data=40KB
Increasing code cache capacity to 256KB
07-12 13:42:38.932 org.briarproject.briar.android I/CryptoComponentImpl: Installed SecureRandom: LinuxPRNG SHA1PRNG
07-12 13:42:39.970 org.briarproject.briar.android I/LifecycleManagerImpl: Registering executor TimeLoggingExecutor
07-12 13:42:39.971 org.briarproject.briar.android I/LifecycleManagerImpl: Registering executor ThreadPoolExecutor
Registering executor ScheduledThreadPoolExecutor
07-12 13:42:39.981 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service KeyManagerImpl
Registering executor TimeLoggingExecutor
07-12 13:42:39.999 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service ValidationManagerImpl
07-12 13:42:40.015 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client ClientVersioningManagerImpl
Registering service ClientVersioningManagerImpl
07-12 13:42:40.020 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client TransportPropertyManagerImpl
07-12 13:42:40.021 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service PluginManagerImpl
07-12 13:42:40.034 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client BlogManagerImpl
07-12 13:42:40.041 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client FeedManagerImpl
07-12 13:42:40.069 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client GroupInvitationManagerImpl
07-12 13:42:40.072 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client MessagingManagerImpl
07-12 13:42:40.090 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client ForumSharingManagerImpl
07-12 13:42:40.094 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client BlogSharingManagerImpl
07-12 13:42:40.116 org.briarproject.briar.android I/LifecycleManagerImpl: Registering client IntroductionManagerImpl
07-12 13:42:40.129 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service AndroidNotificationManagerImpl
07-12 13:42:40.130 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service NetworkUsageLogger
07-12 13:42:40.131 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service DozeWatchdogImpl
07-12 13:42:40.132 org.briarproject.briar.android D/StrictMode: StrictMode policy violation; ~duration=1347 ms: android.os.StrictMode$StrictModeUnbufferedIOViolation: policy=65596 violation=32
at android.os.StrictMode$AndroidBlockGuardPolicy.onUnbufferedIO(StrictMode.java:1427)
at libcore.io.IoTracker.trackIo(IoTracker.java:35)
at java.io.FileOutputStream.write(FileOutputStream.java:325)
at java.io.DataOutputStream.write(DataOutputStream.java:107)
at java.io.FilterOutputStream.write(FilterOutputStream.java:97)
at org.briarproject.bramble.system.AbstractSecureRandomProvider.writeToEntropyPool(AbstractSecureRandomProvider.java:30)
at org.briarproject.bramble.system.AndroidSecureRandomProvider.writeToEntropyPool(AndroidSecureRandomProvider.java:42)
at org.briarproject.bramble.system.LinuxSecureRandomProvider.writeSeed(LinuxSecureRandomProvider.java:48)
at org.briarproject.bramble.system.AndroidSecureRandomProvider.writeSeed(AndroidSecureRandomProvider.java:72)
at org.briarproject.bramble.system.LinuxSecureRandomProvider.getProvider(LinuxSecureRandomProvider.java:40)
at org.briarproject.bramble.crypto.CryptoComponentImpl.<init>(CryptoComponentImpl.java:65)
at org.briarproject.bramble.crypto.CryptoModule.provideCryptoComponent(CryptoModule.java:32)
at org.briarproject.bramble.crypto.CryptoModule_ProvideCryptoComponentFactory.get(CryptoModule_ProvideCryptoComponentFactory.java:26)
at org.briarproject.bramble.crypto.CryptoModule_ProvideCryptoComponentFactory.get(CryptoModule_ProvideCryptoComponentFactory.java:9)
at dagger.internal.ScopedProvider.get(ScopedProvider.java:46)
at org.briarproject.bramble.lifecycle.LifecycleModule_ProvideLifecycleManagerFactory.get(LifecycleModule_ProvideLifecycleManagerFactory.java:39)
at org.briarproject.bramble.lifecycle.LifecycleModule_ProvideLifecycleManagerFactory.get(LifecycleModule_ProvideLifecycleManagerFactory.java:13)
at dagger.internal.ScopedProvider.get(ScopedProvider.java:46)
at org.briarproject.bramble.transport.TransportModule_ProvideKeyManagerFactory.get(TransportModule_ProvideKeyManagerFactory.java:30)
at org.briarproject.bramble.transport.TransportModule_ProvideKeyManagerFactory.get(TransportModule_ProvideKeyManagerFactory.java:10)
at dagger.internal.ScopedProvider.get(ScopedProvider.java:46)
at org.briarproject.bramble.contact.ContactManagerImpl_Factory.get(ContactManagerImpl_Factory.java:23)
at org.briarproject.bramble.contact.ContactManagerImpl_Factory.get(ContactManagerImpl_Factory.java:9)
at org.briarproject.bramble.contact.ContactModule_GetContactManagerFactory.get(ContactModule_GetContactManagerFactory.java:22)
at org.briarproject.bramble.contact.ContactModule_GetContactManagerFactory.get(ContactModule_GetContactManagerFactory.java:8)
at dagger.internal.ScopedProvider.get(ScopedProvider.java:46)
at org.briarproject.bramble.contact.ContactModule$EagerSingletons_MembersInjector.injectMembers(ContactModule$EagerSingletons_MembersInjector.java:23)
at org.briarproject.bramble.contact.ContactModule$EagerSingletons_MembersInjector.injectMembers(ContactModule$EagerSingletons_MembersInjector.java:9)
at org.briarproject.briar.android.DaggerAndroidComponent.inject(DaggerAndroidComponent.java:698)
at org.briarproject.bramble.BrambleCoreModule.initEagerSingletons(BrambleCoreModule.java:55)
at org.briarproject.briar.android.BriarApplicationImpl.onCreate(BriarApplicationImpl.java:117)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5740)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:440)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
07-12 13:42:40.337 org.briarproject.briar.android I/LifecycleManagerImpl: Registering service ScreenFilterMonitorImpl
07-12 13:42:40.343 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: false
07-12 13:42:40.740 org.briarproject.briar.android I/BriarRecyclerView: Adding Handler Callback
07-12 13:42:40.744 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: false
07-12 13:42:40.801 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key directory: /data/user/0/org.briarproject.briar.android/app_key
07-12 13:42:40.802 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: false
07-12 13:42:40.803 org.briarproject.briar.android I/ConfigControllerImpl: No database key in preferences
07-12 13:42:40.807 org.briarproject.briar.android I/ConfigControllerImpl: Found database key in primary file
07-12 13:42:40.808 org.briarproject.briar.android I/AndroidDatabaseConfig: Files in /data/user/0/org.briarproject.briar.android/app_db:
db.mv.db
Database exists: true
07-12 13:42:40.911 org.briarproject.briar.android I/TextInputLayout: EditText added is not a TextInputEditText. Please switch to using that class instead.
07-12 13:42:41.072 org.briarproject.briar.android I/zygote64: Do full code cache collection, code=124KB, data=90KB
07-12 13:42:41.073 org.briarproject.briar.android I/zygote64: After code cache collection, code=90KB, data=45KB
07-12 13:42:41.137 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: false
07-12 13:42:41.243 org.briarproject.briar.android I/Adreno: QUALCOMM build : 8c8f5af, Ic7262d4df1
Build Date : 10/28/17
OpenGL ES Shader Compiler Version: EV031.20.00.04
Local Branch :
Remote Branch : quic/gfx-adreno.lnx.1.9.r3-rel
Remote Branch : NONE
Reconstruct Branch : NOTHING
07-12 13:42:41.249 org.briarproject.briar.android I/Adreno: PFP: 0x005ff087, ME: 0x005ff063
07-12 13:42:41.406 org.briarproject.briar.android I/BriarRecyclerView: Removing Handler Callback
07-12 13:42:43.020 org.briarproject.briar.android I/zygote64: Do partial code cache collection, code=123KB, data=76KB
After code cache collection, code=123KB, data=76KB
Increasing code cache capacity to 512KB
07-12 13:42:44.903 org.briarproject.briar.android I/ConfigControllerImpl: No database key in preferences
07-12 13:42:44.907 org.briarproject.briar.android I/ConfigControllerImpl: Found database key in primary file
07-12 13:42:45.758 org.briarproject.briar.android I/AndroidDatabaseConfig: Setting database key
07-12 15:40:21.565 org.briarproject.briar.android I/BriarRecyclerView: Adding Handler Callback
07-12 15:40:21.567 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: true
07-12 15:40:21.589 org.briarproject.briar.android I/BriarService: Created
07-12 15:40:21.589 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: true
07-12 15:40:21.611 org.briarproject.briar.android I/AndroidDatabaseConfig: Local author name has been set: false
07-12 15:40:21.615 org.briarproject.briar.android I/LifecycleManagerImpl: Starting services
07-12 15:40:21.617 org.briarproject.briar.android I/AndroidDatabaseConfig: Files in /data/user/0/org.briarproject.briar.android/app_db:
07-12 15:40:21.618 org.briarproject.briar.android I/AndroidDatabaseConfig: db.mv.db
Database exists: true
07-12 15:40:21.763 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: true
07-12 15:40:22.086 org.briarproject.briar.android I/zygote64: Do full code cache collection, code=237KB, data=201KB
07-12 15:40:22.087 org.briarproject.briar.android I/zygote64: After code cache collection, code=205KB, data=138KB
07-12 15:40:25.581 org.briarproject.briar.android I/zygote64: Do partial code cache collection, code=250KB, data=146KB
After code cache collection, code=249KB, data=146KB
Increasing code cache capacity to 1024KB
07-12 15:40:27.227 org.briarproject.briar.android I/IdentityManagerImpl: Local author loaded
07-12 15:40:28.027 org.briarproject.briar.android I/PluginManagerImpl: Starting poller
07-12 15:40:28.030 org.briarproject.briar.android I/PluginManagerImpl: Starting simplex plugins
Starting duplex plugins
07-12 15:40:28.044 org.briarproject.briar.android I/AndroidDatabaseConfig: Database key has been set: true
07-12 15:40:28.056 org.briarproject.briar.android I/TorPlugin: Starting Tor
```https://code.briarproject.org/briar/briar/-/issues/1336NPE in ShowQrCodeFragment2018-07-25T13:33:31ZakwizgranNPE in ShowQrCodeFragment* Android version: 8.0.0
* Phone model: Samsung SM-N950U (greatqltesq)
* Briar version: 1.0.9 (841c31e)
* User feedback: "Couldn't add contact."
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'android.v...* Android version: 8.0.0
* Phone model: Samsung SM-N950U (greatqltesq)
* Briar version: 1.0.9 (841c31e)
* User feedback: "Couldn't add contact."
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.WindowManager android.app.Activity.getWindowManager()' on a null object reference
at org.briarproject.briar.android.keyagreement.ShowQrCodeFragment.getScreenRotationDegrees(ShowQrCodeFragment.java:189)
at org.briarproject.briar.android.keyagreement.ShowQrCodeFragment.reset(ShowQrCodeFragment.java:247)
at org.briarproject.briar.android.keyagreement.ShowQrCodeFragment.lambda$keyAgreementFailed$5$ShowQrCodeFragment(ShowQrCodeFragment.java:351)
at org.briarproject.briar.android.keyagreement.ShowQrCodeFragment$$Lambda$5.run(Unknown Source:2)
at org.briarproject.briar.android.fragment.BaseFragment.lambda$runOnUiThreadUnlessDestroyed$0$BaseFragment(BaseFragment.java:89)
at org.briarproject.briar.android.fragment.BaseFragment$$Lambda$0.run(Unknown Source:6)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6940)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
```Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1333Screen overlay warning is shown when dismissing dialog2020-11-18T01:44:17ZakwizgranScreen overlay warning is shown when dismissing dialogWhile smoke testing the 1.0.11 release on the Galaxy Nexus (Android 4.3), I saw the screen overlay warning after dismissing the error dialog and tapping the URL text field in the RSS import screen. Perhaps an overlay is used to animate t...While smoke testing the 1.0.11 release on the Galaxy Nexus (Android 4.3), I saw the screen overlay warning after dismissing the error dialog and tapping the URL text field in the RSS import screen. Perhaps an overlay is used to animate the dismissal of the dialog? I wasn't able to reproduce the issue.https://code.briarproject.org/briar/briar/-/issues/1332Wrong date seems to make contact exchanges very slow2021-07-23T11:12:52ZJulian DehmWrong date seems to make contact exchanges very slowI observed the following during a contact exchange:
Device A (Galaxy S3-LTE i9350), Device B (Galaxy S5 mini):
Device A had a completely wrong clock (2012-01-1 6 AM).
The contact exchange worked super fast on Device A while Device B was ...I observed the following during a contact exchange:
Device A (Galaxy S3-LTE i9350), Device B (Galaxy S5 mini):
Device A had a completely wrong clock (2012-01-1 6 AM).
The contact exchange worked super fast on Device A while Device B was stuck at "Exchanging contact details"
for at least 1 minute. Eventually it would finish and show the contact in the contact list.
Log from device A: https://code.briarproject.org/snippets/63
Log device B: https://code.briarproject.org/snippets/64
After the contact exchange I tried if the devices can connect to each other but it didn't seem to work:
Log A:https://code.briarproject.org/snippets/65
Log B:https://code.briarproject.org/snippets/66
The contact exchange seemed to work pretty normal once I changed the time to the current.Android 1.3https://code.briarproject.org/briar/briar/-/issues/1331Tor warns about unused DT entry2020-11-16T11:01:26ZakwizgranTor warns about unused DT entryTor prints the following warning on the Moto G 4G (Android 5.1):
```
06-23 11:36:49.198 I/TorPlugin(13958): Jun 23 11:36:49.196 [notice] Tor 0.2.9.15 (git-4e6ac9830840448e) running on Linux with Libevent 2.0.22-stable, OpenSSL 1.0.2o an...Tor prints the following warning on the Moto G 4G (Android 5.1):
```
06-23 11:36:49.198 I/TorPlugin(13958): Jun 23 11:36:49.196 [notice] Tor 0.2.9.15 (git-4e6ac9830840448e) running on Linux with Libevent 2.0.22-stable, OpenSSL 1.0.2o and Zlib 1.2.8.
06-23 11:36:49.198 I/TorPlugin(13958): WARNING: linker: /data/data/org.briarproject.briar.android.debug/app_tor/tor: unused DT entry: type 0x6ffffffe arg 0x5347c
06-23 11:36:49.200 I/TorPlugin(13958): Jun 23 11:36:49.199 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
06-23 11:36:49.200 I/TorPlugin(13958): WARNING: linker: /data/data/org.briarproject.briar.android.debug/app_tor/tor: unused DT entry: type 0x6fffffff arg 0x3
06-23 11:36:49.202 I/TorPlugin(13958): Jun 23 11:36:49.201 [notice] Read configuration file "/data/data/org.briarproject.briar.android.debug/app_tor/torrc".
06-23 11:36:49.246 I/TorPlugin(13958): Jun 23 11:36:49.226 [notice] Opening Control listener on 127.0.0.1:59051
06-23 11:36:49.247 I/TorPlugin(13958): Jun 23 11:36:49.226 [notice] DisableNetwork is set. Tor will not make or accept non-control network connections. Shutting down all existing connections.
```
[This StackOverflow answer](https://stackoverflow.com/questions/33206409/unused-dt-entry-type-0x1d-arg/41900551#41900551) suggests the warning is caused by using the wrong NDK compiler flags, and may be upgraded to an error in future Android versions.https://code.briarproject.org/briar/briar/-/issues/1330Can't click "got it" during password setup2019-02-28T19:44:25ZShannon StorkCan't click "got it" during password setupWhen a tester set up a password and clicked the (i) on the top right, he couldn't click "got it" and had to tap out of the box. Device: Samsung s8+ (Android 8.x)When a tester set up a password and clicked the (i) on the top right, he couldn't click "got it" and had to tap out of the box. Device: Samsung s8+ (Android 8.x)https://code.briarproject.org/briar/briar/-/issues/1329TorPlugin: Authentication cookie did not match expected value2018-06-29T15:38:25ZTorsten GroteTorPlugin: Authentication cookie did not match expected valueWhen working on #1267 restarted Briar several times to check Tor connections. In one of those times, the `TorPlugin` did not start with this trace:
```
06-25 16:05:18.114 W/PluginManagerImpl: Plugin org.briarproject.bramble.tor did not ...When working on #1267 restarted Briar several times to check Tor connections. In one of those times, the `TorPlugin` did not start with this trace:
```
06-25 16:05:18.114 W/PluginManagerImpl: Plugin org.briarproject.bramble.tor did not start
org.briarproject.bramble.api.plugin.PluginException: net.freehaven.tor.control.TorControlError: Error reply: Authentication failed: Authentication cookie did not match expected value.
org.briarproject.bramble.api.plugin.PluginException: net.freehaven.tor.control.TorControlError: Error reply: Authentication failed: Authentication cookie did not match expected value.
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:266)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:213)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
Caused by: net.freehaven.tor.control.TorControlError: Error reply: Authentication failed: Authentication cookie did not match expected value.
at net.freehaven.tor.control.TorControlConnection.sendAndWaitForResponse(TorControlConnection.java:204)
at net.freehaven.tor.control.TorControlConnection.authenticate(TorControlConnection.java:492)
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:251)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:213)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
```
Starting Briar again fixed it, but this should probably still not happen.Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1327AssertionError when pressing back in contact list after setup2019-04-02T13:12:30ZakwizgranAssertionError when pressing back in contact list after setupLooks like SetupActivity was still on the back stack.
```
06-22 14:51:17.259 3107-3107/? E/ACRA: ACRA caught a AssertionError for org.briarproject.briar.android.debug
java.lang.AssertionError
at org.briarproject.briar.androi...Looks like SetupActivity was still on the back stack.
```
06-22 14:51:17.259 3107-3107/? E/ACRA: ACRA caught a AssertionError for org.briarproject.briar.android.debug
java.lang.AssertionError
at org.briarproject.briar.android.login.SetupActivity.onCreate(SetupActivity.java:42)
at android.app.Activity.performCreate(Activity.java:4470)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
at android.app.ActivityThread.access$600(ActivityThread.java:123)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
at dalvik.system.NativeStart.main(Native Method)
```Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1317Notification Dot is Always Shown on Android 82021-02-18T17:03:30ZTorsten GroteNotification Dot is Always Shown on Android 8Android 8 launchers show a notification dot on the application icon, if the app has an open notification. Our permanent foreground service notification causes the dot to be shown as well. However, Signal's foreground notification does no...Android 8 launchers show a notification dot on the application icon, if the app has an open notification. Our permanent foreground service notification causes the dot to be shown as well. However, Signal's foreground notification does not cause the dot to be shown.akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1316Use of string "Make introduction" in two contexts should be avoided2018-06-18T14:20:41ZsBsUse of string "Make introduction" in two contexts should be avoidedThe string "Make introduction" (https://code.briarproject.org/akwizgran/briar/blob/master/briar-android/src/main/res/values/strings.xml#L150) is used in two distinct contexts:
1. In file https://code.briarproject.org/akwizgran/briar/bl...The string "Make introduction" (https://code.briarproject.org/akwizgran/briar/blob/master/briar-android/src/main/res/values/strings.xml#L150) is used in two distinct contexts:
1. In file https://code.briarproject.org/akwizgran/briar/blob/master/briar-android/src/main/res/layout/introduction_message.xml:
app:buttonText="@string/introduction_button"
In this case, the string is used as the label of a button. The user just defined two contacts to be presented. The app shows clearly which two contacts are going to be introduced. The button referred is used to finally trigger the introduction process. Thus, it has an imperative and final meaning: "do introduce each other the contacts shown in the image". The user has followed all the introduction process to arrive here. Then, it can be assumed that it's clear what he is going to do.
1. In file https://code.briarproject.org/akwizgran/briar/blob/master/briar-android/src/main/res/menu/conversation_actions.xml:
android:title="@string/introduction_button"
In this case, the string is an entry of the vertical dots menu bound to a contact conversation screen. The meaning is more in the sense of "introduce him [the current contact] to another contact". The user is beginning the process of presentation. A more explicit description would be more intuitive.
In catalan l10n both cases would be better differentiated. In the first case, a plain imperative sentence (Presenta'ls) would be optimal. In the second case, it would be more interesting a description of the action (Presenta aquest contacte a un altre, Presenta'l a un altre contacte). However, being a single string this translation scheme cannot be applied.
I suggest to use distinct strings to cases 1 and 2.
PS: spanish translator added a comment in the same senseAndroid 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1315Wifi icon is sometimes green when not connected to wifi2020-11-17T18:29:53ZakwizgranWifi icon is sometimes green when not connected to wifi* Android version: 7.1.2
* Phone model: Samsung GT-I9195 (lineage_serranoltexx)
* Briar version: 1.0.8 (a44a68f)
* User feedback: "Sometimes (also while writing this) the Wifi icon is green even when Wifi is turned off."
The log doesn't...* Android version: 7.1.2
* Phone model: Samsung GT-I9195 (lineage_serranoltexx)
* Briar version: 1.0.8 (a44a68f)
* User feedback: "Sometimes (also while writing this) the Wifi icon is green even when Wifi is turned off."
The log doesn't show any sign of connectivity changes, so this may be a UI issue.https://code.briarproject.org/briar/briar/-/issues/1314Missing or repeated flags in emoji chooser2018-09-03T12:12:48ZakwizgranMissing or repeated flags in emoji chooser* Android version: 6.0.1
* Briar version: 1.0.1
* User feedback: "In icon section, some flags are missing and most of them are repeated several times."* Android version: 6.0.1
* Briar version: 1.0.1
* User feedback: "In icon section, some flags are missing and most of them are repeated several times."Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1313Tor fails to start if previous Tor instance is still running2023-03-15T12:55:10ZakwizgranTor fails to start if previous Tor instance is still runningI ran into this issue a couple of times while debugging #1293, and now I've seen it in a user feedback log (also affected by #1293, as far as I can tell).
```
05-25 14:25:08.926 I/TorPlugin: May 25 16:25:08.926 [notice] Tor 0.2.9.14 (gi...I ran into this issue a couple of times while debugging #1293, and now I've seen it in a user feedback log (also affected by #1293, as far as I can tell).
```
05-25 14:25:08.926 I/TorPlugin: May 25 16:25:08.926 [notice] Tor 0.2.9.14 (git-73e1a45b461ab669) running on Linux with Libevent 2.0.22-stable, OpenSSL 1.0.2n and Zlib 1.2.8.
05-25 14:25:08.939 I/TorPlugin: May 25 16:25:08.927 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
05-25 14:25:08.939 I/TorPlugin: May 25 16:25:08.927 [notice] Read configuration file "/data/data/org.briarproject.briar.android/app_tor/torrc".
05-25 14:25:08.939 I/TorPlugin: May 25 16:25:08.935 [notice] Opening Control listener on 127.0.0.1:59051
05-25 14:25:08.939 I/TorPlugin: May 25 16:25:08.935 [warn] Could not bind to 127.0.0.1:59051: Address already in use. Is Tor already running?
05-25 14:25:08.940 I/TorPlugin: May 25 16:25:08.935 [warn] Failed to parse/validate config: Failed to bind one of the listener ports.
05-25 14:25:08.940 I/TorPlugin: May 25 16:25:08.935 [err] Reading config failed--see warnings above.
05-25 14:25:08.940 W/TorPlugin: Tor exited with value 1
```
The problem occurs because the previous Tor instance is still using the control port. This is unlikely to happen if Tor starts and stops normally, because the shutdown command takes effect very quickly. But if Briar fails to open the control connection (e.g. due to #1293 or similar bugs), Tor won't exit until a short time after Briar exits, during which time Briar may have been relaunched. I think this could also happen if Briar crashes and is immediately relaunched.https://code.briarproject.org/briar/briar/-/issues/1310NPE during enter transition2021-11-04T11:03:44ZakwizgranNPE during enter transition* Android version: 7.1.2
* Phone model: Samsung GT-I9100
* Briar version: 1.0.4 (f31219d)
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.view.Window.getAllowReturnTransitionOverlap()' o...* Android version: 7.1.2
* Phone model: Samsung GT-I9100
* Briar version: 1.0.4 (f31219d)
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.view.Window.getAllowReturnTransitionOverlap()' on a null object reference
at android.app.EnterTransitionCoordinator.allowOverlappingTransitions(EnterTransitionCoordinator.java:676)
at android.app.EnterTransitionCoordinator.sendSharedElementDestination(EnterTransitionCoordinator.java:188)
at android.app.EnterTransitionCoordinator.viewsReady(EnterTransitionCoordinator.java:129)
at android.app.EnterTransitionCoordinator$2.onPreDraw(EnterTransitionCoordinator.java:154)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:944)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2205)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6344)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
at android.view.Choreographer.doCallbacks(Choreographer.java:686)
at android.view.Choreographer.doFrame(Choreographer.java:621)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6186)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
```
Unfortunately there's no clue in the stacktrace about where this crash happens. Might have been fixed by !821 if we're lucky.Android 1.4https://code.briarproject.org/briar/briar/-/issues/1309IllegalStateException when creating account2018-06-14T17:17:17ZakwizgranIllegalStateException when creating account* Android version: 8.0.0
* Phone model: Motorola XT1650 (griffin)
* Briar version: 1.0.2 (e516c32)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.briar.android.login.SetupControllerImpl.createAccount(SetupControll...* Android version: 8.0.0
* Phone model: Motorola XT1650 (griffin)
* Briar version: 1.0.2 (e516c32)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.briar.android.login.SetupControllerImpl.createAccount(SetupControllerImpl.java:88)
at org.briarproject.briar.android.login.SetupControllerImpl.createAccount(SetupControllerImpl.java:82)
at org.briarproject.briar.android.login.DozeFragment.onClick(DozeFragment.java:109)
at android.view.View.performClick(View.java:6259)
at android.view.View$PerformClick.run(View.java:24732)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6592)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:769)
```
This comes from an old Briar version and the code in question has changed. The exception is thrown because the author name or password is null, but those values are now stored in the activity rather than the controller, and they're saved and restored on screen rotation. So this bug may already have been fixed. The ticket can be closed if we don't get any more reports.Android 1.1https://code.briarproject.org/briar/briar/-/issues/1303IllegalArgumentException: parameter must be a descendant of this view2021-11-04T11:04:02ZakwizgranIllegalArgumentException: parameter must be a descendant of this viewTwo crash reports from the same user:
* Android version: 7.1.2
* Phone model: Samsung GT-I9100
* Briar version:
* 1.0.4 (f31219d)
* 1.0.5 (183f0c5)
* User feedback:
* "Sending message to contact. (Message contains \" and ' charact...Two crash reports from the same user:
* Android version: 7.1.2
* Phone model: Samsung GT-I9100
* Briar version:
* 1.0.4 (f31219d)
* 1.0.5 (183f0c5)
* User feedback:
* "Sending message to contact. (Message contains \" and ' characters.)"
* "Briar in foreground, no user action."
First log:
```
05-18 13:22:51.117 I/EmojiProvider: Loaded page emoji_smiley_people.png
05-18 13:22:55.909 I/KeyboardAwareLinearLayout: onKeyboardOpen(282)
05-18 13:23:47.110 I/ConversationActivity: Storing message took 298 ms
05-18 13:23:49.311 I/ConversationActivity: Messages sent
05-18 13:23:49.598 I/BriarRecyclerView: Updating Content...
05-18 13:23:49.630 I/ConversationActivity: Marking read took 2 ms
05-18 13:23:51.009 I/ConversationActivity: Messages acked
05-18 13:23:52.434 I/BriarRecyclerView: Adding Handler Callback
05-18 13:23:52.435 I/AndroidDatabaseConfig: Database key has been set: true
05-18 13:23:52.634 I/ContactListFragment: Full load took 192 ms
```
Crashed at 13:23:53.397
Second log:
```
05-25 09:06:43.627 I/EmojiProvider: Loading page emoji_smiley_people.png
05-25 09:06:43.836 I/ConversationActivity: Marking read took 207 ms
05-25 09:06:44.282 I/EmojiProvider: Loaded page emoji_smiley_people.png
05-25 09:06:48.501 I/ConversationActivity: Storing message took 366 ms
05-25 09:06:48.710 I/BriarRecyclerView: Adding Handler Callback
05-25 09:06:48.711 I/AndroidDatabaseConfig: Database key has been set: true
```
Crashed at 09:06:49.050
Stacktrace:
```
java.lang.IllegalArgumentException: parameter must be a descendant of this view
at android.view.ViewGroup.offsetRectBetweenParentAndChild(ViewGroup.java:5459)
at android.view.ViewGroup.offsetDescendantRectToMyCoords(ViewGroup.java:5388)
at android.view.ViewRootImpl.scrollToRectOrFocus(ViewRootImpl.java:3073)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2683)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2608)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2215)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6344)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
at android.view.Choreographer.doCallbacks(Choreographer.java:686)
at android.view.Choreographer.doFrame(Choreographer.java:621)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6186)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
```
It looks like both crashes happened after sending and receiving private messages containing emoji, then switching away from the private conversation. In the first crash the switch was to the contact list - in the second crash it's not clear.Android 1.4https://code.briarproject.org/briar/briar/-/issues/1302Connection chooser rejects connection when retrying adding a contact2021-04-07T16:57:57ZakwizgranConnection chooser rejects connection when retrying adding a contact* Android version: 8.0.0
* Phone model: Samsung SM-G950F (dreamltexx)
* Briar version: 1.0.5 (183f0c5)
* User feedback: "Add contacts did not work. Devices were in the same WLAN."
Log:
```
05-28 10:31:56.933 I/KeyAgreementConnector: org...* Android version: 8.0.0
* Phone model: Samsung SM-G950F (dreamltexx)
* Briar version: 1.0.5 (183f0c5)
* User feedback: "Add contacts did not work. Devices were in the same WLAN."
Log:
```
05-28 10:31:56.933 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:57.434 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:57.935 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:58.435 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:58.936 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:59.437 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:31:59.938 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:00.197 I/TorPlugin: OR connection CLOSED
05-28 10:32:00.208 I/TorPlugin: Online: true, wifi: true
05-28 10:32:00.208 I/TorPlugin: Country code: DE
05-28 10:32:00.208 I/TorPlugin: Enabling network
05-28 10:32:00.440 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:00.940 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:01.441 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:01.941 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:02.442 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:02.943 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:03.443 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:03.944 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:04.445 I/KeyAgreementConnector: org.briarproject.bramble.lan: Waiting for data
05-28 10:32:04.528 I/KeyAgreementConnector: Stopping BQP listeners
05-28 10:32:04.530 I/ConnectionChooserImpl: Closing 0 unused connections
05-28 10:32:04.531 I/ConnectionChooserImpl: java.net.SocketException: Socket closed
05-28 10:32:04.533 I/CameraView: Opening camera
05-28 10:32:04.539 I/CameraView: Using back-facing camera
05-28 10:32:04.602 I/CameraView: Screen rotation 0 degrees, camera orientation 90 degrees
05-28 10:32:04.605 I/CameraView: Scene modes: [auto, hdr]
05-28 10:32:04.606 I/CameraView: Focus modes: [auto, infinity, macro, continuous-video, continuous-picture]
05-28 10:32:04.606 I/CameraView: Size 1920x1080, stretch 1.03125, zoom 4.1472, score 0.23381966
05-28 10:32:04.606 I/CameraView: Size 1440x1080, stretch 1.375, zoom 3.1104, score 0.23381966
05-28 10:32:04.606 I/CameraView: Size 1088x1088, stretch 1.8333333, zoom 2.367488, score 0.2303938
05-28 10:32:04.606 I/CameraView: Size 1280x720, stretch 1.03125, zoom 1.8432, score 0.52609426
05-28 10:32:04.606 I/CameraView: Size 1056x704, stretch 1.2222222, zoom 1.486848, score 0.55027944
05-28 10:32:04.606 I/CameraView: Size 1024x768, stretch 1.375, zoom 1.572864, score 0.46238753
05-28 10:32:04.606 I/CameraView: Size 960x720, stretch 1.375, zoom 1.3824, score 0.52609426
05-28 10:32:04.606 I/CameraView: Size 800x450, stretch 1.03125, zoom 1.3888888, score 0.6981818
05-28 10:32:04.606 I/CameraView: Size 720x720, stretch 1.8333333, zoom 1.0368, score 0.52609426
05-28 10:32:04.606 I/CameraView: Size 720x480, stretch 1.2222222, zoom 1.4467592, score 0.56552726
05-28 10:32:04.606 I/CameraView: Size 640x480, stretch 1.375, zoom 1.6276041, score 0.44683638
05-28 10:32:04.606 I/CameraView: Size 352x288, stretch 1.5, zoom 4.9321337, score 0.135168
05-28 10:32:04.606 I/CameraView: Size 320x240, stretch 1.375, zoom 6.5104165, score 0.111709096
05-28 10:32:04.606 I/CameraView: Size 256x144, stretch 1.03125, zoom 13.563368, score 0.07149382
05-28 10:32:04.607 I/CameraView: Size 176x144, stretch 1.5, zoom 19.728535, score 0.033792
05-28 10:32:04.607 I/CameraView: Best size 800x450
05-28 10:32:04.619 I/CameraView: Video stabilisation enabled: false
05-28 10:32:04.619 I/CameraView: Scene mode: auto
05-28 10:32:04.619 I/CameraView: Focus mode: continuous-picture
05-28 10:32:04.619 I/CameraView: Flash mode: off
05-28 10:32:04.619 I/CameraView: Preview size: 800x450
05-28 10:32:04.647 I/KeyAgreementConnector: Starting BQP listeners
05-28 10:32:04.650 I/BluetoothConnectionLimiterImpl: Key agreement ended
05-28 10:32:04.678 I/KeyAgreementConnector: Listening via org.briarproject.bramble.lan
05-28 10:32:04.681 I/BluetoothConnectionLimiterImpl: Key agreement started, closing 0 connections
05-28 10:32:04.704 I/CameraView: Surface created
05-28 10:32:04.704 I/CameraView: Surface changed: 1080x1980
05-28 10:32:04.708 I/CameraView: Size 1920x1080, stretch 1.03125, zoom 4.1472, score 0.23381966
05-28 10:32:04.708 I/CameraView: Size 1440x1080, stretch 1.375, zoom 3.1104, score 0.23381966
05-28 10:32:04.708 I/CameraView: Size 1088x1088, stretch 1.8333333, zoom 2.367488, score 0.2303938
05-28 10:32:04.708 I/CameraView: Size 1280x720, stretch 1.03125, zoom 1.8432, score 0.52609426
05-28 10:32:04.708 I/CameraView: Size 1056x704, stretch 1.2222222, zoom 1.486848, score 0.55027944
05-28 10:32:04.708 I/CameraView: Size 1024x768, stretch 1.375, zoom 1.572864, score 0.46238753
05-28 10:32:04.708 I/CameraView: Size 960x720, stretch 1.375, zoom 1.3824, score 0.52609426
05-28 10:32:04.708 I/CameraView: Size 800x450, stretch 1.03125, zoom 1.3888888, score 0.6981818
05-28 10:32:04.708 I/CameraView: Size 720x720, stretch 1.8333333, zoom 1.0368, score 0.52609426
05-28 10:32:04.708 I/CameraView: Size 720x480, stretch 1.2222222, zoom 1.4467592, score 0.56552726
05-28 10:32:04.708 I/CameraView: Size 640x480, stretch 1.375, zoom 1.6276041, score 0.44683638
05-28 10:32:04.708 I/CameraView: Size 352x288, stretch 1.5, zoom 4.9321337, score 0.135168
05-28 10:32:04.708 I/CameraView: Size 320x240, stretch 1.375, zoom 6.5104165, score 0.111709096
05-28 10:32:04.708 I/CameraView: Size 256x144, stretch 1.03125, zoom 13.563368, score 0.07149382
05-28 10:32:04.708 I/CameraView: Size 176x144, stretch 1.5, zoom 19.728535, score 0.033792
05-28 10:32:04.708 I/CameraView: Best size 800x450
05-28 10:32:04.718 I/CameraView: Video stabilisation enabled: false
05-28 10:32:04.719 I/CameraView: Scene mode: auto
05-28 10:32:04.719 I/CameraView: Focus mode: continuous-picture
05-28 10:32:04.719 I/CameraView: Flash mode: off
05-28 10:32:04.719 I/CameraView: Preview size: 800x450
05-28 10:32:04.719 I/CameraView: Starting preview
05-28 10:32:04.946 I/ConnectionChooserImpl: Got connection for org.briarproject.bramble.lan
05-28 10:32:04.946 I/ConnectionChooserImpl: Already stopped
05-28 10:32:05.046 I/ShowQrCodeFragment: Local payload is 36 bytes
05-28 10:32:06.819 I/Poller: Polling plugin org.briarproject.bramble.lan
05-28 10:32:07.890 I/CameraView: Stopping preview
05-28 10:32:07.890 I/KeyAgreementConnector: Stopping BQP listeners
05-28 10:32:07.891 I/ConnectionChooserImpl: Closing 0 unused connections
05-28 10:32:07.891 I/BluetoothConnectionLimiterImpl: Key agreement ended
05-28 10:32:07.891 I/ConnectionChooserImpl: java.net.SocketException: Socket closed
05-28 10:32:08.068 I/CameraView: Releasing camera
05-28 10:32:08.182 I/QrCodeDecoder: Camera has changed, ignoring preview frame
05-28 10:32:08.192 I/CameraView: Surface destroyed
```
Notes:
* 10:31:56.933 - At the start of the log the device has made a connection via wifi and it's waiting for data - this might be because the other device hasn't scanned this device's QR code yet.
* 10:32:04.528 - The connection attempt is cancelled and the ConnectionChooserImpl is stopped.
* 10:32:04.533 - The camera is reopened. This is too soon after the previous event to be the result of a manual action.
* 10:32:04.647 - A new connection attempt starts. The BluetoothConnectionLimiter gets a KeyAgreementStoppedListeningEvent when the old key agreement task is stopped, then a KeyAgreementListeningEvent when the new task is started.
* 10:32:04.946 - A connection is made via wifi, but the ConnectionChooserImpl rejects it because it's already been stopped
It looks like the ConnectionChooserImpl instance is being reused, which shouldn't happen. This may mean the KeyAgreementTaskImpl instance is also being reused.