I have built an app that does audio analysis. I have stripped the GPL files from these binaries regarding license issues. The binnaries are in the root folder of ny build next to the .app file MacOs/
I can not run this in sandbox mode. Everything works except for the audio analysis. Can I still submit this to the AppStore and get accepted? Will users whom download the app be able to run the audio analysis?
I aaked this on Apple support but they gave me a general answer to appstore documentation
Hope someone here has experience with this.
There are two parts to questions like this:
- What’s technically feasible?
- What’s required by App Review?
I don’t work for App Review, so I can’t offer definitive advice on their policies. I recommend that you review their published guidelines.
I’m happy to wade into technical questions. And on that front, you wrote:
I can not run this in sandbox mode.
Why not?
In general, sandboxed apps are allowed to:
- Play and record audio
- Have embedded helper executables
- Spawn child processes
Given that, I can’t see any fundamental reason why this won’t work. So I recommend that you dig further into the failure, because that’s likely to be a lot more fun than the alternatives.
Note It’s better to reply as a reply, rather than in the comments; see Quinn’s Top Ten DevForums Tips for this and other titbits.
you can have your users download the command-line tool and install it on their own.
That’s unlikely to work. There are two potential problems. First, the user would have to place the tool in a directory that’s within your app’s static sandbox, and that’s not the default for tools like Homebrew.
IMPORTANT You can’t use a dynamic sandbox extension, like the one created by the open panel, to run a tool. Such extensions only allow read and write, not execute. I talk about that more in On File System Permissions.
Additionally, when a sandbox app spawns a tool, the tool inherits the app’s sandbox. So if the tool has sandboxing problems, it won’t work no matter how your app starts it.
Which brings me back to my initial advice: Explore why the tool isn’t working when sandboxed.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"