Q1) Saya ingin menjalankan program c sederhana pada emulator android. Saya menggunakan os windows xp
di mesin saya. Saya telah menginstal sdk, jdk, eclipse
untuk pengembangan android dan berhasil menjalankan aplikasi android pada AVD.
Q2) Saya hanya perlu tahu apakah ada cara untuk menjalankan program C (tanpa java) di AVD
. Di mesin saya, saya telah menginstal arm dan menggunakan itu saya telah menyusun program C.
Q3) Saya juga ingin tahu apakah mungkin untuk mendorong biner yang dikompilasi ke dalam perangkat android atau AVD
dan dijalankan menggunakan terminal perangkat android atau AVD
?
Anda dapat mengkompilasi program C Anda dengan cross-compiler ARM:
arm-linux-gnueabi-gcc -static -march=armv7-a test.c -o test
Kemudian Anda dapat mendorong file biner yang telah dikompilasi ke suatu tempat (jangan mendorongnya ke kartu SD):
adb push test /data/local/tmp/test
jika Anda telah menginstal NDK dengan sukses, maka mulailah dengan aplikasi sampelnya
http://developer.android.com/sdk/ndk/overview.html#samples
jika Anda tertarik dengan cara lain maka mungkin ini akan membantu
http://shareprogrammingtips.blogspot.com/2018/07/cross-compile-cc-based-programs-and-run.html
Saya juga ingin tahu apakah mungkin untuk mendorong biner yang dikompilasi ke dalam perangkat android atau AVD dan dijalankan menggunakan terminal perangkat android atau AVD?
di sini Anda dapat melihat NestedVM
NestedVM menyediakan terjemahan biner untuk Java Bytecode. Hal ini dilakukan dengan meminta GCC mengkompilasi ke biner MIPS yang kemudian diterjemahkan ke file kelas Java. Oleh karena itu, aplikasi apapun yang ditulis dalam C, C++, Fortran, atau bahasa lain yang didukung oleh GCC dapat dijalankan dalam 100% Java murni tanpa perubahan sumber.
Contoh: Kompilasi silang program Hello world C dan jalankan di android