Well, I’ve been diving in the murky waters of low-level Android programming (native C/C++ using the CodeSourcery toolchain). I tried out the executable on an emulator and it worked. I’d like to try it out on a real device. So I plugged in my nexus and pushed the files on to the filesystem. Then I tried to execute the binary, and I got a permission error. It really doesn’t matter how I mount it, or where I send it, I’m not root and it’s not letting me execute it. Is there any way to run a program like this on a non-rooted phone?
Well, I’ve been diving in the murky waters of low-level Android programming (native C/C++
Share
After using the toolchain included in the Android NDK to compile your binaries, it is possible to package them with a typical Android app and have them spawn as subprocesses.
You’ll have to include all the necessary files within the assets folder of your application. In order to run them, you have to have the program copy them from the assets folder to a runnable location like: /data/data/com.yourdomain.yourapp/nativeFolder
You can do this like so:
Keep in mind that the assetPath is not absolute but in respect to assets/.
IE: "assets/nativeFolder" is just "nativeFolder"
To then run your application and read its output you could do something like this: