【发布时间】:2014-09-14 07:51:59
【问题描述】:
我想把一个 arm 预编译的二进制文件附加到我的私人 android 应用程序上。
如果你不介意,我会告诉你我的应用程序。由于我的 gprs 与我的机器人通信,它只需要修改 iptables 规则。它是 android 的遥控器,如果我拒绝所有流量而不是我的机器人的流量,我会得到更好的结果。
所以我用我的 cyanogenmod 的 11 版 iptables 编译了一个 iptables,但支持 -save -restore,因为我想在完成对我的机器人的控制后恢复规则..
问题是我已经在谷歌搜索了很长时间,我刚刚发现 droidwall 似乎只在“res”顶级目录中创建了一个“原始”目录,一旦安装,我可以看到在 adb shell 上,/data/data 路径中的文件夹“app_bin”。 但是当我安装我的应用程序时,创建的那些目录我什至看不到一些奇怪路径中的二进制文件......真的,这是一个非常罕见的情况吗?我在网络上找不到任何文档...
非常感谢,
希望对您有所帮助。
阿贝尔。
编辑(可能的解决方案)
我已经从 android_firewall 项目中下载了代码,它似乎正在从 apk 资源复制到 bin 目录:
./src/com/jtschohl/androidfirewall/Api.java: 最终字符串 app_iptables = dir + "/iptables_armv5"; ./src/com/jtschohl/androidfirewall/Api.java: // 检查 iptables_armv5 ./src/com/jtschohl/androidfirewall/Api.java:文件文件=新文件(ctx.getDir(“bin”,0),“iptables_armv5”); ./src/com/jtschohl/androidfirewall/Api.java: copyRawFile(ctx, R.raw.iptables_armv5, file, "755");
我要试试。持续关注新闻...
【问题讨论】:
标签: android binary add precompiled