嵌入式GUI FTK介绍(9)在Android模拟器上运行FTK

嵌入式GUI FTK介绍(9)-在Android模拟器上运行FTK

转载时请注明出处和作者联系方式
文章出处:http://www.limodev.cn/blog
作者联系方式:李先静 <xianjimli at hotmail dot com>

在Android模拟器是用QEMU实现ARM虚拟机,在很大程度上可以模拟真实的运行环境。FTK可以在Android模拟器上运行,其方法如下:
android
1.download android source and make sdk.

  mkdir android-eclair
  cd android-eclair/
  repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair
  repo sync
  make sdk
  cd ..
  unzip android-eclair/out/host/linux-x86/sdk/android-sdk_eng.lixianjing_linux-x86.zip
  mv android-sdk_eng.lixianjing_linux-x86 ftk_emu
recompile it:
  cd -;make

2.unpack platforms/android-1.5/images/ramdisk.img in SDK, edit init.rc to forbit system server.

  cd ftk_emu/platforms/android-Eclair/images/

unpack ramdisk:

  mv ramdisk.img ramdisk.img.gz;
  gunzip ramdisk.img.gz;
  mkdir initrd;
  cd initrd;
  cpio -i <../ramdisk.img

edit init.rc, comment this following lines:

#service zygote /system/bin/app_process -Xzygote /system/bin --zygote
--start-system-server
#    socket zygote stream 666
#    onrestart write /sys/android_power/request_state wake
#    onrestart write /sys/power/state on
#    onrestart restart media

repack ramdisk.img

  find . | cpio -c -o > ../ramdisk
  cd ..
  gzip ramdisk
  mv ramdisk.gz ramdisk.img

3.edit ftk/src/Android-build.sh, set the ANDROID_ROOT to android source dir.
the run Android-build.sh

  ./Android-build.sh

4.create a virtual machine and run it:

  ./ftk_emu/tools/android create avd -t 1 -n ftk
  ./ftk_emu/tools/emulator -avd ftk

5.upload demo* to /data

  enter android-eclair directory, then:
  for f in out/target/product/generic/system/bin/demo_*;do adb push $f
/data;done

6.upload data/theme/testdata to /data/ftk

  entry ftk directory, then
  adb shell mkdir /data/ftk
  adb shell mkdir /data/ftk/base
  adb shell mkdir /data/ftk/base/data
  adb shell mkdir /data/ftk/base/theme
  adb shell mkdir /data/ftk/base/theme/default
  for f in theme/default/*;do adb push $f /data/ftk/base/theme/default;done
  for f in data/*;do adb push $f /data/ftk/base/data;done
  for f in src/demos/*.xul;do adb push $f /data/ftk/;done
  ...

7.run the demos.

  adb shell
  cd /data
  chmod 775 demo*
  ./demo_button

原文地址:https://www.cnblogs.com/zhangyunlin/p/6167423.html