`

Android 模拟器运行编译后的源码

阅读更多
          下载Android源码以及如何编译,这里就不多介绍了,照着www.android.com给的步骤进行,主要介绍一下使用make命令编译好了源码之后,如何使用模拟器来运行生成的镜像之类的文件。
           方式应该有很多,接下来介绍两种方式:
           1.源码编译完成,在目录/home/archermind/source/source/out/host/linux-x86/bin 下有很多工具,使用emulator工具可以创建一个模拟器,emulator -memory 1024 \
-partition-size 512 -sdcard /home/archermind/source/source/sd.img
(注意路径)
           会自动将系统生成的镜像数据之类的文件烧进这个模拟器,为了方便,可以写个脚本文件,脚本文件命名start.sh ,放在源码文件的根路径下,我的是/home/archermind/source/source/   路径,start.sh的内容:

#!/bin/bash
ANDROID_PRODUCT_OUT=/home/archermind/source/source/out/target/product/generic \
/home/archermind/source/source/out/host/linux-x86/bin/emulator -memory 1024 \
-partition-size 512 -sdcard /home/archermind/source/source/sd.img -wipe-data &
         
          最后,编译好了源码之后,只要在根目录下运行 source  start.sh 就可以运行模拟器了。大部分会选择这种方式启动模拟器。

             2. 编译源码中的SDK ,在SDK中创建模拟器,将源码生成的镜像之类的文件,替换掉SDK相应下的文件。

              源码中SDK所在路径为:/home/archermind/source/source/out/host/linux-x86/sdk,编译源码,也就是使用make命令编译的时候,默认不编译SDK,编译SKD使用命令lunch sdk-eng 和 make sdk。
              
              编译好了SDK之后,创建avd,进入到tools路径下,/source/source/out/host/linux-x86/sdk/android-sdk_eng.archermind_linux-x86/tools,使用android工具创建avd,
              命令: ./android create avd -n name -t 1
             查看当前avd :./android list avd
             启动模拟器:   ./emulator @name            在前面的创建命令中,模拟器命名name
            这时候启动的模拟器没有SD卡,可以再创建个SD卡,
            命令:mksdcard 256M sdcard.img  还是在tools路径下执行此命令,
            启动带有SD 卡的模拟器:
             ./emulator @name -sdcard sdcard.img
          
            到这一步,启动起来的模拟器是SDK生成的镜像,如果想用源码编译出来的镜像,要替换掉SDK路径下的镜像文件,在SDK的路径/source/source/out/host/linux-x86/sdk/android-sdk_eng.archermind_linux-x86/system-images/android-4.1.1/armeabi-v7a$ 路径下,存放这些镜像文件:
               build.prop  kernel-qemu  NOTICE.txt  ramdisk.img  source.properties  system.img  userdata.img       
               需要替换的文件有 kernel-qemu  ramdisk.img   system.img  userdata.img    
               在编译好的源码中寻找这些文件:
              kernel-qemu  所在路径:
                                /home/archermind/source/source/prebuilts/qemu-kernel/arm
              ramdisk.img  system.img     userdata.img  所在路径:
                                /home/archermind/source/source/out/target/product/generic
        
               最后,启动模拟器。
               PS:1. 将/source/source/out/host/linux-x86/sdk/android-sdk_eng.archermind_linux-x86/tools 加入环境变量,可以方便打开模拟器。
                         2. 或者写一个脚本文件,将替换镜像文件和启动模拟器写入脚本文件,方便启动。



分享到:
评论

相关推荐

    Android GBA与GBC游戏模拟器源码编译的demo_bySoftboy

    Android GBA与GBC游戏模拟器源码编译的demo_bySoftboy

    Android小霸王nes游戏模拟器源码编译的apk

    Android小霸王nes游戏模拟器源码编译的apk Android小霸王nes游戏模拟器源码编译的apk

    Android街机模拟器可定制源码

    Android街机模拟器可定制 Android 街机 模拟器 可定制 源码

    安卓FC NES小霸王游戏模拟器源码编译APK支持wifi直连对战游戏

    【安卓FC NES小霸王游戏模拟器源码编译APK支持wifi直连对战游戏】是一个专为Android平台设计的复古游戏模拟器项目,它能够让用户在手机上体验到经典的小霸王(NES)游戏。这款模拟器的独特之处在于其内置了WiFi直连...

    nes模拟器 源码 编译

    3. **编译源码**:使用makefile或者CMakeLists.txt文件进行编译。 4. **调试与测试**:运行编译后的程序,并对模拟器的功能进行测试和调试。 #### 三、Android平台下的NES模拟器开发 从给定的部分内容中,我们可以...

    gba模拟器android源码

    标题 "gba模拟器android源码" 提供了一个关键信息,即我们要讨论的是一个用于Android平台的Game Boy Advance(GBA)模拟器的源代码。GBA模拟器是一种软件,允许用户在非GBA设备上运行GBA游戏,比如Android智能手机或...

    android P android9源码编译.ipr.iml文件

    5. 编译源码前,确保你已经设置了正确的Android SDK版本和NDK(Native Development Kit),并且安装了必要的构建工具链。 6. 在Android Studio中执行编译命令,例如`make`或使用Gradle的`./gradlew build`,根据项目...

    安卓GBA游戏模拟器源码编译APK与测试游戏.zip

    在下载的压缩包"安卓GBA游戏模拟器源码编译APK与测试游戏.zip"中,包含了模拟器的源代码,这意味着你可以查看和修改代码,以适应自己的需求或者优化性能。源码编译是将这些源代码转换为可执行的APK(Android应用程序...

    android中模拟器中的app源代码

    本主题将深入探讨如何在Android模拟器中运行和调试App的源代码,这对于理解和优化应用性能,以及进行跨设备兼容性测试至关重要。 首先,我们要明白Android App的源代码通常由Java或Kotlin编写,通过Android Studio...

    如何单独编译Android源代码中的模块

    在 Android 源代码工程中,单独编译某个模块是一件很有必要的事情。尤其是在我们修改了某个模块或新增了自己的模块时,重新编译整个 Android 系统镜像 system.img 是非常耗时的。这时,我们可以使用 Android 提供的...

    mame街机模拟器安卓android源码

    源码中包含了针对Android优化的代码,确保了模拟器在移动设备上的流畅运行。此外,由于Android系统的碎片化,源码可能还需要包含针对不同API级别和设备硬件的适配代码。 为了帮助用户理解和使用这款模拟器,源码包...

    android 版本的街机模拟器源码

    编译源码时,需要遵循Android应用开发的常规步骤,包括设置Android开发环境、导入项目、配置NDK以及使用Android.mk或CMakeLists.txt文件进行编译配置。编译过程中,关键点在于正确链接库文件,处理好依赖关系,并...

    fba安卓模拟器源码编译APP demo完美运行

    fba安卓模拟器源码编译APP demo完美运行,下载后按帮助操作即可。性能比强悍,适合比较低端的设备运行。另外兼容的游戏rom也比较多,基本可以淘汰mame实现性能之王。无积分下载可以点头像找我发给你。

    编译Android源码全过程

    在开始编译Android源码之前,首先需要确保获取完整的Android源代码。这一部分将详细介绍如何使用Git和Repo脚本完成这一任务。 ##### Git简介 Git是一种分布式版本控制系统,由Linux之父Linus Torvalds开发,旨在更...

    Android编译独立源代码

    ### Android编译独立源代码知识点解析 #### 一、概览 在深入探讨如何编译Android独立源代码之前,我们先来了解下整个过程的基本框架。Android作为一个开源项目,其源代码包含了操作系统的核心部分以及一系列应用...

    SDL Android 例子源码可用工程,实测编译通过在模拟器运行(SDL 2.0 for Android)Eclipse

    SDL Android 例子源码可用工程,实测编译通过在模拟器运行(SDL 2.0 for Android),工程目录名叫AndroidTst2,编译通过可用, sdl source code for android android source code for sdl 2.0 这个工程的文件夹...

    Ubuntu下编译Android源码并运行Emulator2.pdf

    Ubuntu 下编译 Android 源码并运行 Emulator 2 在 Ubuntu 环境中编译 Android 源码并运行 Emulator 2 需要经过多个步骤,包括安装环境、设置环境变量、安装 repo、下载 Android 源码、编译 Android 源码等。 一、...

    如何单独编译Android源码中的模块

    Android 源码单独编译模块是指在 Android 源代码工程中编译指定的模块,而不需要重新编译整个 Android 系统。这种方法可以节省大量的时间和资源,因为编译整个 Android 系统需要漫长的等待时间。 在 Android 源代码...

    Android_模拟器的认识.doc

    获取Android模拟器的源代码和预构建库有几种方法: 1. **通过获取Android平台代码**:这可以从AOSP(Android Open Source Project)仓库中获取,模拟器的源代码位于`external/qemu`目录下。 2. **GitWeb下载**:...

Global site tag (gtag.js) - Google Analytics