ditto
Iāve had to take a break because Iām busy but Iāll start working on it again around July.
Iām writing it in C# with Xamarin for Android.
As for beta testers/translators. Iāll probably be releasing a beta version once all of the features are implemented so Iāll post about that when it happens. It will be in English only to start with, if itās successful Iāll add some more languages and features
This is a passion project so I canāt really afford to expand upon it much unless I get some compensation for it, itās possible that Iāll open source it.
Iām looking at the end of the year/very early next year for release.
A little more(stress the little) info here https://github.com/EReeves/OGSAndroidCommitLog
Thank you for working on this. Canāt wait to test it out!
Hi Rvzy,
that sound cool! Keep up the good work
Guess that leaves the iOS part openā¦ Any āswiftā takers who want to chip in?
Bart-Jan.
Would it be possible to get an android app that simply puts a notice in your alert bar that it is your move in one or more games? Even if you canāt play on it or see the games? The web app looks great on my device, I jut donāt like always checking to see if it is my move.
This is a little more challenging than it seems and requires some server infrastructure to workā¦ we would need a service listening for notifications that could push them to android and ios devices and it would need tight coupling with an app. both android and ios now have pretty strict guidelines on what an app can do and a simple notification app likely wonāt pass muster.
I have no idea how the back end works but would it not be possible to just add another page to the API that lists the gameid of games where it is your turn? Itās not something that would work for real time notifications but checking every couple hours would be reasonable for most correspondence time settings.
Itās something Iād like to add to my app at some point if possible.
This will always list your own ongoing games:
https://online-go.com/api/v1/me/games/?started__isnull=False&ended__isnull=True
Notice the me uri so it requires that you be logged in.
Hi All,
i just bought Android TV Box, and thinking to enjoy Go game on big TV screen.
it will be fun to enjoy Go with family in front of big screen.(be it online, or offline challenge)
Anyone or any group can develop client to be run on Android TV Box ?
This needs a lot efforts, and many thanks in advance.
I, too, have an Android TV Box; and, I love it!
My coding skills are not up to par for this task.
But, I will be glad to beta test.
@pathogenix, do you have a repository on github yet? If not, Iād encourage you to choose a license, and publish your code (even if ugly)! The sooner you do this, the sooner others can collaborate with you and get a working prototype.
by the way, you can run OGS through dolphin browser on the android TV
just download dolphin browser from the play store and GO
Dear all,
Iāve released an open-source android client to play correspondence go for some time now, and Iāve just added some simple beta-code to allow playing OGS correspondence games on android smartphone.
It looks like itās working for me, although nothing shiny can be done for now:
- you can only play a move on every game where itās your turn
- you can also accept challenges, but not propose new ones
nothing more for now, but I think itās enough to start with, because the rest can be done less frequently on a real computer.
You can find it here: https://github.com/cerisara/DragonGoApp
Iām currently beta-testing it: youāre welcome to also try it !
After a few days of beta-testing to locate bugs, I plan to release a version on F-droid.
I have one question: do you know how to access the chat with the API ? Because the app is unable to see chats/comments for now, and I think thatās really the next feature to add.
Thanks for your feedback
Hi there @cerisara check out our real time api here to access chat:
Just looking through your code, it looks like you may be exposing your OGS api access keys via your github repo. Iād strongly caution against doing that.
Thanks for the real-time api, Iāll have a look at it.
As for the keys, I donāt have any key stored in my repo (neither client id, nor client secret, nor of course the player access token). Both client keys are downloaded at launch time from a live server. I donāt know of any better (and reasonably easy) way to get them (?).
Thanks for the help.
I think the best way to go about it is to keep them alongside your build tree locally and prevent them from being stored in your source tree. Other developers would need to generate their own key in order to support it in local builds. This is a pretty well documented development pattern.
The problem here is that anyone building your app from source would use your same keys, if anyone ever started abusing the key then weād be forced to disable it and that would disable it for all app users.
OK, I understand the risk and Iām going to use this solution for now.
But I didnāt used it to start with because itās not easily compatible with the F-droid open-source approach, which guarantees that delivered apks come from a known open-source repo by rebuilding the apk from scratch on their server.
There may be a way though, but Iāve got to investigate a bit the f-droid buildsā¦
Also, with the keys kept locally in a config file, I assume that the config file has to be encrypted in some way ? Otherwise, it may be easy to decompile the apk with, for instance, intelliJ, and get the key ?
Just thinking about it, that may work indeed with on-demand deciphering the keyā¦
But there still is a vulnerability I guess: what about wiresharking the connection going out from the mobile ?
May be itās not an issue thanks to https, which encrypts the messagesā¦
Itād be nice to have a wiki page discussing about all these issues and solutions.
Thanks !
Sorry to come back to this, but after more thinking, it looks like the only safe way is to ask every user of a client app to create himself the client id + secret, and enter both in the app at runtime
In other words, doing as if every user developed his own app.
Thatās because whatever encryption/keys/server you use, itās always possible to decrypt everything in an apk and extract the keys.
ā¦ But then, what is the whole purpose of having client credentials ? A single user-specific secret is enough to also identify an appā¦
Anyway, this type of discussion already occurred at F-Droid, and they rejected the option of having private configuration file for these very same reasons.
So, Iām gonna build myself the apk with a private config file, and donāt distribute the apk with f-droid; itās far from perfect because the keys may still be hacked, and the appās users will not have any guarantee about the software source as with f-droid, but at least theyāll be able to play go on android
Certainly there are ways to get the information from the client, thereās no real way to stop that but itās immensely better than having them available in search results and widely viewable in github.
Iām familiar with the f-droid discussion around this from the time they basically grabbed one of my open source apps and built it and hosted it themselves without even telling me about it. Then I had to deal with all of the support requests when features of my app that required externals keys (much like you have to do here with OGS) didnāt work.
Iām not a big fan of how they run things.