⑴ android studio怎样编译qgroundcontrol安卓源码
、qt的安装路径,以及以后使用vs建立qt项目的时候,不能有中文,路径中也不能有空格.
2)、删除源码包中bin目录下的syncqt和syncqt.dat文件,如你不放心可将其改名或剪切到别的位置。如不修改将发生 Perl not found in environment - cannot run syncqt 错误。
3)、一定要修改\mkspecs\win32-msvc2010下的qmake.conf文件,将其中的"QMAKE_CFLAGS=-nologo -Zm200 -Zc:wchar_t-“改成"QMAKE_CFLAGS=-nologo -Zm200 -Zc:wchar_t” 注意末尾的”-“号区别。如不修改将来如有项目使用wchar_t,qt却编译成wchar_t-,编译会导致连接错误,提示找不到Qwstring;
4)、关于是困旦否需要修改\mkspecs\win32-msvc2010下的qmake.conf文件中的QMAKE_CFLAGS_RELEASE,QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO,QMAKE_CFLAGS_DEBUG这3处后面的MD,MDd,取决你打算动消喊态还是静态编译,如果是静态编译的话,改为:MT,MTd(最后还要在vs2010中的项目属性中将MD改为MT,以实现在没有VC库的电脑也能运行Qt程序。)。如果是动态编译的话可以不改。
5)、一定要修改src\3rdparty\webkit\Source\WebCore\platform下的DefaultLocalizationStrategy.cpp,定位到327行,将本行替换成return WEB_UI_STRING(“Look Up " "“, “Look Up context menu item with selected word”).replace(“ “, (selectedString));(请直接将以上英文部分一次性全复制,其实它们是一行,不要分行复制)。如果你仔细看原来的那行的话,你会发现双引号是错误的,如不修改将出现编译Webkit 时会出现 U1077错误。
以下是我的编译脚本,可以直接使用,保存为批处理拿尺野文件在QT解压后的根目录运行即可:
@CALL "C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"
⑵ 安卓apk反编译、修改、重新打包、签名全过程
安卓apk反编译、修改、重新打包、签名的全过程如下:
1. 反编译apk 工具准备:确保系统安装了Java,并下载apktool.bat脚本和apktool.jar,将它们放在同一目录。 命令行操作:使用命令apktool.bat d [s] f o进行反编译,其中[s]表示选择文件夹,f表示强制反编译,o指定输出目录。若不指定,将默认在C:UsersAdministrator目录生成。 查看源码:配合dex2jar工具将classes.dex转换为源码文件,然后使用jdgui查看源码。若apk经过混淆,可能需要在线研究以理解混淆后的代码。
2. 修改apk 资源文件修改:直接替换res文件夹中的相应文件。 代码修改:由于反编译后的结果是smali语言,需要对照smali文件和源码进行操作。修改相对复杂,需要一定的smali语言基础。
3. 重新打包apk 使用apktool重新打包:在修改完apk的资源文件和代码后,使用apktool的命令重新打包apk。
4. 签名apk 生成keystore文件:使用keytool工具生成keystore文件,该文件用于存储签名信息。 签名apk:使用jarsigner工具对apk进行签名,签署过程中需要输入keystore信息并指定证书的有效天数。 安装签名后的apk:签名后的apk需要先卸载原版才能安装,因为安卓系统要求每个apk的签名必须唯一。
注意事项: 反编译和修改apk的行为可能涉及版权和法律问题,请确保在合法和合规的范围内进行操作。 签名apk时,需要妥善保管keystore文件,因为一旦丢失,将无法对apk进行更新或签名。
⑶ 安卓怎么使用修改过的源码编译程序
Android的文件系统结构复杂而精细,程序安装的位置至关重要。编译Android源码后,会在out/target/proct/generic目录下生成多个重要文件:ramdisk.img、system.img、userdata.img、system、data、root。其中,system.img由system文件打包压缩而成,userdata.img则由data文件打包压缩。ramdisk.img是模拟器的文件系统,解压ramdisk.img可发现,其内部文件与root文件夹中的文件基本相同。模拟器装载ramdisk.img并解压至内存,随后分别将system.img和userdata.img挂载至ramdisk下的system和data目录。我们编译出的应用程序则存放于system/app下,而用户安装的程序则位于data/app下。
Android SDK及源码能够提供一系列强大的工具。ADB、DDMS、Emulator、AAPT等工具均包含其中,同时,还提供了kernel-qemu、ramdisk.img、system.img、userdata.img等重要文件。因此,只要拥有Android SDK,我们便能在模拟器上顺利运行Android系统。源码编译后会生成Android SDK、ADB等工具、Android文件系统,以及ADT插件。这意味着,我们能够从源码中编译出所有Android相关组件。
编译Android源码时,会生成多种工具和Android文件系统(如system.img等)。同样,使用“makesdk”命令也能生成Android SDK,其中包含工具和Android文件系统。原安装时也已安装了Android SDK。在实际开发过程中,我们应当选择哪些工具和Android文件系统呢?