Hi,
I'm looking to add engine analysis to some kind of iPad chess app(app idea not fully developed yet). With windows or mac users can just select engines they own and your app can talk to the engine through a pipe or runtime and other methods. How is this done on iOS? Most of what i'm seeing is stand alone chess playing programs, or built chess programs for analysis. I saw one app that had a second app you download to get the engine the first app uses but this seemed applicable only to his program?
I've got crafty to build under an ios project. Is it practical to just talk to the crafty code directly an emulate as if crafty thought it was talking to winboard? This solution means they have to use the built in crafty and couldn't import engines they owned.
Mike
interfacing with chess engines on iOS
Moderator: Ras
-
adams161
- Posts: 630
- Joined: Sun May 13, 2007 9:55 pm
- Full name: none
-
Rémi Coulom
- Posts: 438
- Joined: Mon Apr 24, 2006 8:06 pm
Re: interfacing with chess engines on iOS
In iOS, your app must be a single executable. You must link all your code into a single binary.
The reason is that Apple wants to strictly control what runs on the phone and how it is sold, and they don't allow apps that can download executable code (either binary or interpreted).
It may be possible to let two different apps communicate with each other, though. I am not sure how it is done.
The reason is that Apple wants to strictly control what runs on the phone and how it is sold, and they don't allow apps that can download executable code (either binary or interpreted).
It may be possible to let two different apps communicate with each other, though. I am not sure how it is done.
-
daylen
- Posts: 40
- Joined: Fri Dec 30, 2011 5:33 am
- Location: Berkeley, CA
Re: interfacing with chess engines on iOS
Remi is correct. On iOS you must have a single binary. If you're developing for OS X, though, it is a different story. You get to use NSTask to launch subprocesses. Example: https://github.com/daylen/stockfish-mac ... IEngine.mm
-
adams161
- Posts: 630
- Joined: Sun May 13, 2007 9:55 pm
- Full name: none
Re: interfacing with chess engines on iOS
in iOS store, StockFish for ChessApps application advertises:
Important:
You need to install both free apps: ChessApps and stockfish for ChessApps
the two communicate.
Mike
Important:
You need to install both free apps: ChessApps and stockfish for ChessApps
the two communicate.
Mike