-
Notifications
You must be signed in to change notification settings - Fork 415
Go support for android #46
Comments
Ah great! Any idea where to look for releases? (once they're up) |
No idea yet, sorry! |
Alright, just comment if you find out something new ;) |
Since the document mentions the 1.4 cycle, it probably means it will be in the 1.4 stable release of Go. Judging for releace cadence until now, that will be around the end of 2014. Note that the document mentions the NDK bindings regarding graphic APIs so I'm not sure if Syncthing's use case is applicable here. |
Well one thing that we can definitely use is fixed DNS resolving. Currently, we have to hardcode IPs for announce and statistics servers. Edit: Note to self: This could make it possible to run syncthing via NDK (calling main() directly), and thus might fix various problems with the current way of executing syncthing via shell, where the binary is left running after the app has been killed. |
Seem this: https://github.com/miekg/dns |
@c1432666 It doesn't say anything about Android support, and seems to be pretty big, so not sure if @calmh wants to use that. |
Okay the Go builder supports this now, using cgo and Android NDK |
However, all the Android examples I've seen use makefiles, not gradle, and I don't know how this works together. In the mean time, using Go 1.4 with the current build setup should already improve things. |
I wonder if they fixed the DNS issue. |
@AudriusButkevicius The issue is closed as fixed ;) |
It's closed because it got moved: golang/go#8877 |
Ah I misread that. But it says DNS works with cgo, so that should be fine for us, right? |
It all depends how you compile. We are trying to avoid cgo, and as far as I understand you also used a go compiler so far? |
We do have working cgo for many of the builds currently (using gonative). We could probably get it working for Android as well, in a slightly more painful way by using the android SDK's compiler etc. It just needs to be set up once in the Dockerfile and we should be good to go. (Of course, knowing how the SDK works, what the compiler is, and having an Android device to test with makes all of that easier, so it's not something I'm going to start pulling on immediately. But I would like it to happen.) |
I've never worked with the NDK myself, let alone Docker. So I'll probably just wait for some kind of guide for now. The current build script is here. |
So it seems that Android 5 has /etc/resolv.conf |
Nope:
|
Ok my phone is probably like a can of worms full of hacks... that's why... |
Closing this, #57 should be all we need. |
Seen this? :)
https://docs.google.com/document/d/1N3XyVkAP8nmWjASz8L_OjjnjVKxgeVBjIsTr5qIUcA4/preview?sle=true
The text was updated successfully, but these errors were encountered: