问题标签 [edify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 在 Android adb shell 中使用更新二进制函数
我在android.stackexchange上问了一些类似的问题,根据评论,它转向了编程;所以我在这里重申;
正如在原始问题的评论中提到的那样,Edify 脚本(以及解释器本身)的所有支持功能都在update-binary
位于META-INF/com/google/android/
可闪存 zip 文件内的文件中实现。当刷入 zip 文件时(在恢复环境中通过TWRPinstall
的功能),Edify 脚本解释器执行位于相同路径的文件;(这个过程和这些flashable zips的结构在Android社区是众所周知的)updater-script
update-binary
对于执行一般和常见的功能和操作,显然adb shell
比update-binary
可用的功能要强大得多。但我关心一些特定的功能。具体来说,实现了用于管理动态分区操作的功能(例如resize
, remove
, add_group
...)。这些功能在(AFAIK)中不可用,adb shell
目前,我使用它们的唯一方法是编写一个updater-script
文件并将其放入可闪存的 zip 中,最后闪存 zip 文件。
有没有办法通过加载update-binary
文件adb shell
并使用它公开的功能?并最终能够实现这样的目标:adb shell update_dynamic_partitions resize system 2344250624
或adb shell executeEdifyScript script.file
更新 1:
@osm0sis使用 shell 函数创建了一个Edify 脚本功能替换,但只有常用的 Edify 函数,并且缺少我上面提到的那个。
android - Android:Edify 脚本问题与闪烁解压缩的 tar.xz 内核文件 (img) - 文件无法闪烁 - 错过
我从 kernel.tar.xz 中提取我的 img 的 Android 设备内核时遇到问题。我用于解压和刷写 Edify - updater-script。
img 的文件在 /tmp/scripts 文件夹中被 phisicly 解压缩,但 package_extract_file 在同一目录中丢失。
我使用这样的命令:
run_program("/tmp/scripts/busybox", "tar", "-xvJf", "/tmp/scripts/kernel.tar.xz", "SMG988B-boot.img", "-C", "/tmp/脚本");
package_extract_file("/tmp/scripts/SMG988B-boot.img", "/dev/block/platform/13100000.ufs/by-name/boot");
甚至我只解压了完整的 kernel.tar.xz 并且我在 Aroma 安装程序日志中有 7 个带有 SMG988B-boot.img 的 img 文件被遗漏了。 在此处输入图像描述 在此处 输入图像描述
我试图再次设置权限,但这没有帮助。
如您所见:
检测到 G988B @G988B 检测到即将运行程序 [/tmp/scripts/busybox] 带有 8 个参数 SMG988B-boot.img package_extract_file: no tmp/scripts/SMG988B-boot.img in package
如果有人解决了这个问题并可以提供任何建议 - 谢谢。