GenyFlash, 改进Genymotion 模拟器的闪存支持

分享于 

4分钟阅读

GitHub

  繁體 雙語
Improved flashing support for the Genymotion emulator
  • 源代码名称:GenyFlash
  • 源代码网址:http://www.github.com/rovo89/GenyFlash
  • GenyFlash源代码文档
  • GenyFlash源代码下载
  • Git URL:
    git://www.github.com/rovo89/GenyFlash.git
    Git Clone代码到本地:
    git clone http://www.github.com/rovo89/GenyFlash
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/rovo89/GenyFlash
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    GenyFlash

    简介

    Genymotion是一个强大而快速的Android 模拟器。

    不幸的是,它对闪烁的ZIP档案的支持非常有限。 可以将'n'拖放文件拖到 模拟器 窗口,但只将归档的system 子文件夹中包含的文件复制到 /system 分区。 这导致了错误的权限( 比如。 对于可执行文件) 和其他不一致性。 在许多情况下,flashable存档在它的update-binary 或者 updater-script 中包含更多逻辑,这被Genymotion忽略。

    这里存储库包含改进的脚本,尝试更好地模拟自定义恢复,比。 安装后,在 模拟器 窗口中放置准备好的存档文件时应该正确安装。

    工作原理

    Genymotion在 /system/bin 中包含两个脚本,它们在拖动'n'拖放时被调用:

    • check-archive.sh 检查除去的文件是否为flashable存档。
    • flash-archive.sh 提取文件并将文件复制到适当的位置。

    改进的脚本检查 META-INF/com/google/android/update-binary 在归档中,由自定义恢复执行。 如果找到,则在恢复模式下执行这里文件。 任何输出都被重定向到 logcat ( 因为它似乎不可能将它发送回 UI )。 这里二进制文件必须处理所有必需的步骤,换句话说,默认复制 /system 文件没有完成。

    注意英镑:由于下面描述的陷阱,这里逻辑目前仅适用于包含文件名的归档 META-INF/com/google/android/genymotion-ready 你可以使用模板

    安装

    只需启动虚拟设备并执行 install.bat。 如果希望返回旧行为,可以执行 uninstall.bat 命令。

    在Linux上,更改到这个存储库的目录并执行 install.sh/uninstall.sh。

    陷阱

    文件 update-binary 可以是任何可执行文件。 大多数Android设备都是用ARM处理器运行的,但是Genymotion在x86上运行。 因此,二进制文件在Genymotion上是不可执行的很有可能。 这里脚本在这里情况下将失败。

    许多档案包含一个标准的update-binary,它以Edify格式解释并执行另一个叫做 updater-script的文件。 这些脚本可能包含在运行的系统上不能很好地执行的命令( 比如。 卸载系统或者数据分区,或者不考虑 模拟器 中可能出现的其他特殊情况。

    也可以使用普通的shell script 作为 updater-binary。 这是一种构建不同平台上flashable的存档方法。 但是,这些脚本通常引用 /sbin/sh,这通常在自定义恢复中可用,但不在Genymotion中。 同样适用于 /tmp 和其他文件/目录。

    处理这些陷阱的想法可以在 https://github.com/rovo89/GenyFlash/issues 找到。

    许可证

    对Genymotion脚本的更改是在 MIT许可证下发布的。

    另外,我明确授予 Genymobile ( 在Genymotion后面的公司) 允许在它的VM映像中部分或者完全包含这些更改的权限。 我相信这将是一个很好的改进,如果这种支持是有效的。


    IMP  SUP  FLA  Flash  flashing  Genymotion  
    相关文章