systemui编译
❶ 反编译systemui.apk,需要编译.odex哪个文件吗还是不用管它
需要把systemUI.apk和systemUI.odex合并成为一个新的UI才能反编译哦
❷ android 源码 怎么只编译 systemui
Google提供的Android包含了原始Android的目标机代码,主机编译工具、仿真环境,下载的代码包经过解压后(这里是Android2.2的源码包),源代码的第一层目录结构如下: -- Makefile -- bionic (bionic C库) -- bootable (启动引导相关代码) -- build (存放系统编译规则及generic等基础开发包配置) -- cts (Android兼容性测试套件标准) -- dalvik (dalvik java虚拟机) -- development (应用程序开发相关) -- external (android使用的一些开源的模组) -- frameworks (核心框架——java及C++语言) -- hardware (主要保护硬解适配层HAL代码) -- libcore -- ndk -- device -- out (编译完成后的代码输出与此目录) -- packages (应用程序包) -- prebuilt (x86和arm架构下预编译的一些资源) -- sdk (sdk及模拟器) -- system (文件系统库、应用及组件——c语言) `-- vendor (厂商定制代码) bionic 目录 -- libc (C库) -- arch-arm (ARM架构,包含系统调用汇编实现) -- arch-x86 (x86架构,包含系统调用汇编实现) -- bionic (由C实现的功能,架构无关) -- docs (文档) -- include (头文件) -- inet -- kernel (Linux内核中的一些头文件) -- netbsd (?netbsd系统相关,具体作用不明) -- private (?一些私有的头文件) -- stdio (stdio实现) -- stdlib (stdlib实现) -- string (string函数实现) -- tools (几个工具) -- tzcode (时区相关代码) -- unistd (unistd实现) `-- zoneinfo (时区信息) -- libdl (libdl实现,dl是动态链接,提供访问动态链接库的功能) -- libm (libm数学库的实现,) -- alpha (apaha架构) -- amd64 (amd64架构) -- arm (arm架构) -- bsdsrc (?bsd的源码) -- i386 (i386架构) -- i387 (i387架构?) -- ia64 (ia64架构) -- include (头文件) -- man (数学函数,后缀名为.3,一些为freeBSD的库文件) -- powerpc (powerpc架构) -- sparc64 (sparc64架构) `-- src (源代码) -- libstdc++ (libstdc++ C++实现库) -- include (头文件) `-- src (源码) -- libthread_db (多线程程序的调试器库) `-- include (头文件) `-- linker (动态链接器) `-- arch (支持arm和x86两种架构) bootable 目录 -- bootloader (适合各种bootloader的通用代码) `-- legacy (估计不能直接使用,可以参考) -- arch_armv6 (V6架构,几个简单的汇编文件) -- arch_msm7k (高通7k处理器架构的几个基本驱动) -- include (通用头文件和高通7k架构头文件) -- libboot (启动库,都写得很简单) -- libc (一些常用的c函数) -- nandwrite (nandwirte函数实现) `-- usbloader (usbloader实现) -- diskinstaller (android镜像打包器,x86可生产iso) `-- recovery (系统恢复相关) -- edify (升级脚本使用的edify脚本语言) -- etc (init.rc恢复脚本) -- minui (一个简单的UI) -- minzip (一个简单的压缩工具) -- mttils (mtd工具) -- res (资源) `-- images (一些图片) -- tools (工具) `-- ota (OTA Over The Air Updates升级工具) `-- updater (升级器) build目录 -- core (核心编译规则) -- history (历史记录) -- libs `-- host (主机端库,有android “cp”功能替换) -- target (目标机编译对象) -- board (开发平台) -- emulator (模拟器) -- generic (通用) -- idea6410 (自己添加的) `-- sim (最简单) `-- proct (开发平台对应的编译规则) `-- security (密钥相关) `-- tools (编译中主机使用的工具及脚本) -- acp (Android "acp" Command) -- apicheck (api检查工具) -- applypatch (补丁工具) -- apriori (预链接工具) -- atree (tree工具) -- bin2asm (bin转换为asm工具) -- check_prereq (检查编译时间戳工具) -- dexpreopt (模拟器相关工具,具体功能不明) -- droiddoc (?作用不明,java语言,网上有人说和JDK5有关) -- fs_config (This program takes a list of files and directories) -- fs_get_stats (获取文件系统状态) -- iself (判断是否ELF格式) -- isprelinked (判断是否prelinked) -- kcm (按键相关) -- lsd (List symbol dependencies) -- releasetools (生成镜像的工具及脚本) -- rgb2565 (rgb转换为565) -- signapk (apk签名工具) -- soslim (strip工具) `-- zipalign (zip archive alignment tool) dalvik目录 dalvik虚拟机 . -- dalvikvm (main.c的目录) -- dexmp (dex反汇编) -- dexlist (List all methods in all concrete classes in a DEX file.) -- dexopt (预验证与优化) -- docs (文档) -- dvz (和zygote相关的一个命令) -- dx (dx工具,将多个java转换为dex) -- hit (?java语言写成) -- libcore (核心库) -- libcore-disabled (?禁用的库) -- libdex (dex的库) -- libnativehelper (Support functions for Android's class libraries) -- tests (测试代码) -- tools (工具) `-- vm (虚拟机实现) development 目录 (开发者需要的一些例程及工具) -- apps (一些核心应用程序) -- BluetoothDebug (蓝牙调试程序) -- CustomLocale (自定义区域设置) -- Development (开发) -- Fallback (和语言相关的一个程序) -- FontLab (字库) -- GestureBuilder (手势动作) -- NinePatchLab (?) -- OBJViewer (OBJ查看器) -- SdkSetup (SDK安装器) -- SpareParts (高级设置) -- Term (远程登录) `-- launchperf (?) -- build (编译脚本模板) -- cmds (有个monkey工具) -- data (配置数据) -- docs (文档) -- host (主机端USB驱动等) -- ide (集成开发环境) -- ndk (本地开发套件——c语言开发套件) -- pdk (Plug Development Kit) -- samples (演示程序) -- AliasActivity () -- ApiDemos (API演示程序) -- BluetoothChat (蓝牙聊天) -- BrowserPlugin (浏览器插件) -- BusinessCard (商业卡) -- Compass (指南针) -- ContactManager (联系人管理器) -- CubeLiveWall** (动态壁纸的一个简单例程) -- FixedGridLayout (像是布局) -- GlobalTime (全球时间) -- HelloActivity (Hello) -- Home (Home) -- JetBoy (jetBoy游戏) -- LunarLander (貌似又是一个游戏) -- MailSync (邮件同步) -- MultiResolution (多分辨率) -- MySampleRss (RSS) -- NotePad (记事本) -- RSSReader (RSS阅读器) -- SearchableDictionary (目录搜索) -- **JNI (JNI例程) -- SkeletonApp (空壳APP) -- Snake (snake程序) -- SoftKeyboard (软键盘) -- Wiktionary (?维基) `-- Wiktionary**(?维基例程) -- scripts (脚本) -- sdk (sdk配置) -- simulator (?模拟器) -- testrunner (?测试用) `-- tools (一些工具)
❸ 反编译SystemUI.apk不成功,不能框架framework-res,apk.
你在cmd里面还要自己输入指令是很容易出错的,网上反编译的工具很多而且都是越来越傻瓜一键式反编译,编译(前提是安装了jebd构架)。你这个软件过时了。。。
❹ MiuiSystemUI.apk反编译并且修改后无法回编译,提示出错。即使反编译后什么都不修改直接
、反编译=回编译后分别是smali目录回编译为classes.dex文件res目录回编译为resources.arsc文件2、回编译顺序在回编译时,会先检查“源”即resources当你汉化文件,修改出错了(缺少一个符号也不行),那么回编译会自动跳过编译res文件夹,直接回编译smali。所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,这要会大大加快回编译速度。1、反编译=回编译后分别是smali目录回编译为classes.dex文件res目录回编译为resources.arsc文件2、回编译顺序在回编译时,会先检查“源”即resources当你汉化文件,修改出错了(缺少一个符号也不行),那么回编译会自动跳过编译res文件夹,直接回编译smali。所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,这要会大大加快回编译速度。3、出错问题1在汉化时,往往会不小心删掉一些符号,如""符号等等。FileManager文件管理器/string>这些小小的错误都会导致回编时译检查出错。所以汉化时,注意对校,然后再回编译。建议使用一些高级的文本编辑器,支持语法高亮视图的。4、出错问题2最近发现有些APK文件反编译后,就算不汉化直接回编译,都会出错。有可能的原因1,反编译后XML文件语法中@符号前面多了"\"(\@),用文本编辑工具直接替换【\@】为【@】,应该可以解决。建议使用最新版本的反编译工具。5、建议大家使用新版本的APKTool工具,当然如果新的有问题也可以试试旧的一、系统文件汉化再次强调1、汉化Settings.apk(系统设置)、MMS.apk(信息)、Phone.apk(电话)、等等系统文件,一定要先安装构架,具体看另个文件。2、系统文件汉化完后不需要签名,直接替换汉化后的文件,就可以了。主要是,系统文件放在系统目录,无需再次读取签名获得权限,已经是高级了。二、打包说明1、通常汉化完回编译后,会自动生成所有APK内的文件,或者自动生成*.APK文件。但是建议大家不要直接使用该文件,进了使用替换法,替换掉你汉化后的文件,如:resources.arsc,如果修改过的图片,等等…2、很多人对于APK文件解压缩或压缩都用“WinRAR”或“好压”,这里不推荐。希望大家安装7-Zip这个压缩工具,对于zip格式的支持是最好的。而且很方便,不需要重新关联apk直接右键打开就行了。替换直接拖拉进去,就OK了一、回编译出错问题(1.提示strings.xml最后一行错误,检查是否符号错误;在汉化时,往往会不小心删掉一些符号,如""符号等等。FileManager文件管理器/string>(2.提示strings.xml最顶部含中文代码首行错误,编码格式不对,转换成UTF-8;(3.提示public.xml出错,检查改动过的arrays.xml是否代码有错误的地方;二、一切能正常但无法回编译还有一种情况,apktool最新版本能正常反编译一个apk文件,在未做任何修改的情况下,无法回编译。这是就要注意了,可以尝试一下用低版本的apktool进行【反编译】,然后在用高版本的apktoo工具【回编译】。这里向大家推荐用【APKDB】这个工具,很方便,反编译时可以选择apktool的版本。
❺ 求助一下各位大大,反编译systemui.apk
与其直接帮你回编译,不如教你一个方法吧。systemui.apk这个回编译时是会有错误提示,你看一下内容,大概涉及到两个xml文件。两种方法,一是回编译前删掉这两个xml文件,二是按照错误提示的内容(一般是两个@开头的id值),用NotePad++打开xml文件,删除涉及到的id内容。再回编译,就OK了。然后把dex或者arsc或者编译过的xml文件等拖回最初的systemui.apk替换就好了,不要直接用回编译生成的apk。
❻ 求助,安卓5.1反编译systemui.apk失败
第一:要在你的PC上建立Java的环境,才能执行编译工作。具体方法我这个就不说了,你网络或者Google下就知道了,很简单的。
第二:下载必要的工具。Apktool工具。
下载后解压(有三个文件aapt.exe,apktool.bat,apktool.jar),为了方便。将解压出来的文件放在CDM模式(win+R)默认的目录下。
比如,我的是Windows732位我的CDM模式默认目录是C:\USER\用户名。
第三:如果你是要编译系统文件的话,请将你要修改的rom里的framework-res.apk(暂时叫做依赖包)用CMD模式“安装”下。
这样编译才不会出错。我一开始就是在这里纠结了很久。呵呵
安装方法:把依赖包放在刚才放apktool的目录下。(你也可以用指定目录的方法安装)
cmd模式执行apktoolifframework-res.apk这个是安装framework-res.apk
第四:准备工作都做好了,现在就可以反编译和编译了。
将你要反编译的apk放在apktool的目录下。(你也可以用指定目录)
cmd模式执行apktooldXXXX.apk这个是Decode也就是反编译
比如反编译SystemUI就执行apktooldSystemUI.apk就可以了(会在当前的目录下生成SystemUI的文件夹,修改就是在这个文件夹里进行)
SystemUI.apk等特殊APK文件的反编译和编译技巧
cmd模式执行apktoolbXXXX这个是build也就是编译回去
比如编译SystemUI就执行apktoolbSystemUI就可以了(会在rosie的文件夹中生成一个叫dist的文件夹,编译回去的apk就是此文件夹中)
注意:第三步很重要,很多人不成功就是因为没做第三步。
❼ 如何反编译systemUI.apk
ystemui.apk等特殊软件的编译与反编译步骤如下:
第一:要在你的PC上建立Java的环境,才能执行编译工作。具体设置方法可参考线刷包移植卡刷包教程。
第二:下载Apktool工具 ,下载后解压得到apktool文件夹,把里面的三个文件放在CDM模式(win+R)默认的目录下。例如,我的是Windows7 32位 我的CDM模式默认目录是C:\用户(Users)\Administrator。
第三:如果你是要编译系统文件的话,请将你要修改的rom里提取framework-res.apk,再用CMD模式“安装”。(不这样做会 导致解包错误)
安装方法:把framework-res.apk放在刚才放在C:\用户(Users)\Administrator文件夹下。cmd模式 执行apktool if framework-res.apk 这个是安装framework-res.apk
第四:准备工作都做好了,现在就可以反编译和编译了。将你要反编译的apk放在C:\用户(Users)\Administrator目录下。(你也可以用指定目录)cmd模式 执行apktool d XXXX.apk 这个就是反编译比如反编译SystemUI就执行 apktool d SystemUI.apk 就可以了(会在当前的目录下生成SystemUI的文件夹,修改就是在这个文件夹里进行)
注意:1.第三步很重要,很多人不成功就是因为没做第三步。
2.编辑回去的systemui.apk及framework-res.apk不能直接放回去(framework-res.apk放回去会导致手机不断重启systemui.apk放回去会导致手机无上栏)
❽ 为什么我用apktool反编译systemui.apk后里面没有smali文件夹
说明返编译失败了。
1.反编译Apk得到Java源代码
首先要下载两个工具:dex2jar和JD-GUI
前者是将apk中的classes.dex转化成Jar文件,而JD-GUI是一个反编译工具,可以直接查看Jar包的源代码。
具体步骤:
首先将apk文件,将后缀改为zip,解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;
解压下载的dex2jar,将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录
运行 dex2jar.bat classes.dex
生成 classes.dex.dex2jar.jar
2.反编译apk生成程序的源代码和图片、XML配置、语言资源等文件
还是下载工具,这次用到的是apktool
具体步骤:
将下载的两个包解压到同一个文件夹下,应该会有三个文件:aapt.exe,apktool.bat,apktool.jar
1.解压缩下载的两个文件包,apktool-install-windows-r04-brut1.tar解压缩后得到的包里有aapt.exe 和apktool.bat.(注意要把apktool1.4.1.tar解压后的一个.jar 文件到解压后的\apktool-install-windows-r04-brut1文件夹里)
2.特别注意:你要反编译的文件一定要放在C盘的根目录里