Hi, does any “Android freak” know if there have been changes to broadcast restrictions in Android 11? I’m still on 10 using a Xiaomi phone and local discovery works as expected. I can’t test this with 11 on the emulator as it does NAT the virtual phone “to” my physical computers running Syncthing. Could this also be a bug in Synching or does the error point to the OS as cause?
2020-12-29 20:54:42 sent 515 bytes to 192.168.0.255:21027
2020-12-29 20:54:42 write udp [::]:43262->[ff12::8384]:21027: sendmsg: network is unreachable on write to [ff12::8384]:21027 bond0
2020-12-29 20:54:42 sent 515 bytes to [ff12::8384]:21027 on wlan0
2020-12-29 20:54:42 write udp [::]:43262->[ff12::8384]:21027: sendmsg: network is unreachable on write to [ff12::8384]:21027 wlan1
2020-12-29 20:54:42 write udp [::]:43262->[ff12::8384]:21027: sendmsg: network is unreachable on write to [ff12::8384]:21027 p2p0
2020-12-29 20:54:42 recv 515 bytes from [fe80::b479:c9ff:fe98:1b28%wlan0]:43262
2020-12-29 20:54:58 recv 452 bytes from 192.168.0.102:35263
2020-12-29 20:54:58 recv 452 bytes from [fe80::c069:fd7f:5856:50e9%wlan0]:44536
I have suddenly this problem too after updating my OnePlus 7t Pro yesterday to Android 11.
Does anyone know how to fix this?
Local discovery was 2/2 before. Now it does not work anymore.
I used to use only fixed IP-addresses for Syncthing in my network but i recently switch to only local discovery.
For a log from me i have to find out how to get the log. The Syncthing Fork app does not show a log for Syncthing itself, only the Android log. Do i need to enable debug logs? Or detailed logs in the Syncthing App settings?
I think @imsodin has covered all there to say , (again) it’s unfortunately up to Google to lower the restrictions in upcoming API levels. Not sure the golang team can do anything if the OS blocks the app to use it’s broadcasting features on Api 30.
Google Play sent me a notice which may be relevant for all gplay devs. In english, summarized : The date has been set when Gplay forces us to go up to target sdk level 30.
Neue Anforderungen an Android App Bundle und Ziel-API-Level in 2021
23. März 2021 01:00
Ab August 2021 müssen neue Apps auf das Ziel-API-Level 30 (Android 11) ausgerichtet werden und als Veröffentlichungsformat muss das Android App Bundle verwendet werden. Ab November 2021 müssen alle App-Updates auf das Ziel-API-Level 30 (Android 11) ausgerichtet werden. Apps mit einer Downloadgröße von über 150 MB werden jetzt von Play Asset Delivery und Play Feature Delivery unterstützt.
What would help me on this, and the official Syncthing App, too of course:
If Google would open the applications of app devs with their apps to gain the exceptional permission “storage manager / all files access”.
If Google would allow the background location permission for a sync app (I don’t know why they rejected it more times again for the fork and accepted it for the official app → maybe different reviewer from Google’s team had different opinion on this???)
Android 11 will be remembered as some “shitty platform” to run Syncthing(-Fork) on and then Android 12 will lower the restrictions again in API 31, so a ray of hope comes upon us.
Local discovery was partly fixed in v184.108.40.206. The problem was Android 11 blocking apps from receiving multicast packets from the network. The app now holds the permission to create WifiManager.MulticastLock which allows receiving multicast packets from the local network thus lets the affected Android 11 discover other devices running Syncthing’s local discovery again.
Please note that Android 11 devices cannot discover other Android 11 devices using Syncthing’s local discovery mechanism because sending out multicast packets is still blocked by the OS. I didn’t figure out a way yet to let our NDK executable perform the sending of multicast packets.