android编译期修改资源文件
㈠ android怎么样编译framework
在开发过程中,尤其是Framework相关开发时,有时候需要重新编译资源文件.编译顺序和注意事项如下:
1,资源文件位置:frameworks/base/core/res
2,编译后生成的文件:framework-res.apk 另外com.android.internal.R会更新这个R.java所在目录为/out/target/common/R/com/android/internal.
3,编译资源后,必须重新编译framework.jar.
4,如果在frameworks/base/core/res执行mm是并不重新编译,请使用toutch ### 命令
###代表目录下的一个文件.
5,资源文件要小写.
6,如果没有必要,不要编译资源文件,可以用其他方式使用资源,比如将资源使用adb push 传到某个目
录,程序中直接指定具体目录.我在编译资源过程中遇到一些奇怪的问题,比如有时候许多图标会显
示错误,原因猜测跟重新编译资源有关,可以试着重新编译services.jar并替换看看.
举一个例子:假如我想在WindowManagerService.java中使用一个图片资源pic.png.顺序如下.
1,将文件pic.png拷贝到位置:frameworks/base/core/res/res/drawable下.
2,在frameworks/base/core/res/res/drawable目录下执行touch pic.png.
3,进入目录frameworks/base/core/res/ 执行mm命令, 编译 framework-res.apk
4,执行完后com.android.internal.R 会新生成一个R.drawable.pic的引用.在程序中使用即可.
5,在目录frameworks/base/ 下执行mm 编译 framework.jar.
6,在WindowManagerService.java中使用com.android.internal.R.drawable.pic,使用完后保存文件.
7,进入目录frameworks/base/services/java/ 执行mm 编译 services.jar
8,替换机器上(虚拟机或者真机)的jar apk文件.
adb push framework-res.apk /system/framework/
adb push services.jar /system/framework/
adb push framework.jar /system/framework/
执行命令时注意framework-res.apk 的真实路径.
9,reboot 机器,查看修改结果.大功告成!
㈡ android怎么在源码导入jar包
在Android源码编译成功的基础上重新编译带自己API的android.jar需要进行以下几步操作:
1、添加自己源代码,在Android源码frameworks/base目录下新建一个文件夹保存代码,如tv,以包的形式命名添加的文件所在的路径,如/tv/java/android/tv,添加的java文件开头定义的包即是编译成功的class文件所在的包。
2、修改makefile文件
2.1 修改build/core/pathmap.mk文件
在FRAMEWORKS_ BASE_ SUBDIRS变量后添加tv\,代码如下(makefile文件中的语句以Tab键空格开头)
FRAMEWORKS_BASE_SUBDIRS := \ $(addsuffix /java, \ core \ graphics \ location \ media \ opengl \ sax \ telephony \ wifi \ vpn \ keystore \ tv \ )
2.2 修改frameworks/base/Android.mk 文件
在packages_to_ document变量后添加自己源代码的包名称,如android/tv,结果如下(makefile文件中的语句以Tab键空格开头)
packages_to_document := \
android \
javax/microedition/khronos android/tv 3 在ubuntu命令行终端使用如下命令进行编译:
make clean
make update-api
make PRODUCT-sdk-sdk
最后一行也可以用如下两个命令代替: make –j4 make sdk 4 编译结果
4.1 android.jar文件所在的目录为
/out/target/common/obj/PACKAGING/android_jar_intermediates/android.jar并在/out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_interme diates/src目录下重新以package形式组织所有生成到android.jar中的源代码。 4.2 SDK所在目录为
out/host/linux-x86/sdk/,生成的sdk文件目录和压缩包为: android-sdk_eng.xxx_linux-x86
android-sdk_eng.xxx_linux-x86.zip(xxx为自己android源码所在的文件名)
㈢ Android项目中如何使用资源文件
Android SDK在编译应用时会在R类中为/res/目录下的所有资源创建索引项,因此在java代码中访问资源主要是通过R类来完成。
语法格式为:
package_name.R.resource_type.resource_name
package_name:指定R类所在的包,实际上就是使用全限定类名。不过,要是在java程序中已导入R类所在包,可以省略包名。
resource_type:R类中代表不同资源类型的子类,例如string代表字符串资源。
resource_name:指定资源的名称。
//从drawable资源中加载图片,并设为该窗口的背景
getWindow().setBackgroundDrawableResource(R.drawable.back);
//从string资源中获取指定字符串源码,并设置该窗口的标题
getWindow().setTitle(getResources().getText(R.string.main_title));
㈣ 如何修改原有的Android应用和添加应用
本文实例讲述了Android简单修改原有应用和添加应用的方法。分享给大家供大家参考,具体如下:
第一部分:如何修改原有的Android应用
1. 首先新建一个Android工程,加载自己的Java文件和资源文件。
2. 在自己的android工程初步调试成功以后,把该工程的java文件和资源文件复制到联系人对应的java文件和资源文件目录。
3. 在linux下执行以下命令,编译人联系人模块,把资源文件编译到联系人目录中
?
12
. build/envsetup.shmmm packages/apps/Contacts
4. 刷新android源码工程,这个时候你就可以在Contacts包目录下看到你新加的资源文件和源文件了,并可以在源码工程下修改代码并直接调试了。
5. 在源码工程被修改后,就可在linux下再次执行联系人编译命令, make snod加载system.img文件,并启动模拟器(emulator &),这样就可以看到你的修改了。
问题: 为什么我们要把需要的xml资源文件先在linux下编译?
答:因为我们的android源码工程是以java工程导入的,如果添加android的xml文件的话,java程序无法识别资源R文件,所以我们必须先把需要的xml资源文件先在linux下编译。
第二部分:如何添加一个新的Android应用
1. 先确认SDK目录与系统版本相同,再在SDK目录下开发自己的android应用。
2. 在源码的packages/apps/目录下创建一个android工程。
3. 在工程目录下添加一个Android.mk文件,修改LOCAL_PACKAGE_NAME 把工程名指定为自己命令工程名,如我的工程名为test,则LOCAL_PACKAGE_NAME:=test。
?
12345678910
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := userLOCAL_SRC_FILES := $(callall-java-files-under, src)LOCAL_STATIC_JAVA_LIBRARIES :=googlelogin-clientLOCAL_PACKAGE_NAME :=testLOCAL_CERTIFICATE := sharedinclude $(BUILD_PACKAGE)# Use the folloing include to make our testapk.include $(callall-makefiles-under,$(LOCAL_PATH))
4. 先返回源码目录,然后执行 .build/envsetup.sh (注意sh后的空格)
5. 执行mmmpackages/apps/test001 并编译test001.apk包
6. 执行make snod 并编译system.img包,然后执行emulator &
这样就可以在应用程序下看到自己编译的工程了。
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android操作SQLite数据库技巧总结》、《Android操作json格式数据技巧总结》、《Android数据库操作技巧总结》、《Android文件操作技巧汇总》、《Android编程开发之SD卡操作方法汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
㈤ 安卓脚本过期了怎么改到期时间呢
一般来说,安卓脚本的过期时间是由开发者在开发过程中设定的,但是如果你想改变它的过期时间雹卖行的话,可以使用Android的代码编辑器来更改它的过配闹期时间。步骤如下:
1. 首先,打开你的Android IDE,然后找到你的Android脚本的代码文件。
2. 找到你的脚本的过期时间设置,一般是一个有效期变量,然后更改它的值为你想要的时间。
3. 保存文件,然后重新编译你的Android脚本,更改后的过期时间将会生效。
4. 完成之后,重新部署你的Android脚本到你的应用中,然后就可以使用新的过期时间来运行你的应用了。
如果你想要更改过期时间,可以使用上述步骤来操作,谨慎操作源哗,确保你的应用不会受到影响。