zoukankan      html  css  js  c++  java
  • 使用AndroidFrameworks开发和应用隐藏类 or Android使用自定义framework开发与应用

    Android眼下代表系统的开源手机操作系统已经更新到4.0.3版本号。由于其开源特性。使得操作系统本身所具有的最大的灵活性,但同时也引起的版本号的多样性,市场上出现的是手机厂商或ROM。可是怎样开发Android系统framework层那。我们知道使用Eclipse+ADT就能够进行Android 应用的开发。使用手机或模拟器进行对应效果的调试。

    这是标准的应用开发流程,但在为定制ROM开发定制APK时,常常面对的是使用改动过的Framework。最常见的情况是将原来在Framework中@hide的接口开发。或者增加自己定义的新接口。我们知道使用这样的接口在Eclipse中会直接报错,根本不能进行编译更不用说进行代码的跟踪与调试了。事实上这里能够使用对应的JAVA文件编译得来的.class放入Eclips lib引用库并提高调用优先级。就能够跨越这道屏障,进行应用的开发。顺序例如以下:

    在project的Build Path 中,AddExternal Class Folder中选择对应的.class文件夹路径,别忘了增加后,再在Order中将调用的class放在系统framework.jar之前,这样就能够完毕相关的编译工作。并能够在手机上正常执行。但有一点须要注意,要想使用定制的Framework相关接口。须要手机系统支持。

    也就是对应的手机已经带有对应的ROM才干正常调用这部分接口。

    而相关的.class文件就是在进行系统源代码编译时对应的包(out argetcommonobj)下中间代码。须要依据接口源代码位置,在对应的文件夹查找。

    假设不想这么麻烦,能够直接替换整个framework代码!

    ,文件夹为out argetcommonobjJAVA_LIBRARIESframework_intermediates,在以下有classes-full-debug.jar,这个就是未经压缩的jar包了,里面有全部的fraemwork源代码生成的.class文件了。

    1.在你须要用到的project中:

    点击Build path。点击Add Libraries

    选择User Library,点击Next

    点击User Libraries

    点击New

    在New User Library对话框中输入一个名字。能够自己随意命名,这里取名Myframework。勾选上:system library点击OK,这样就不必去寻找对应的.class文件,直接使用新framework接口的方法了。

    1.选中Android应用的project-右键-Properties-Libraries-Add Library;弹出Add Library”对话框。选择“User Libraries...”。(图1)


    图1


    2.弹出“User Libraries”对话框;点击“New”。弹出“New User Library”对话框:新建Library的名称(“FrameworksJar4.2.2”,library的名字可自己定义),并选中“system library(add to the boot class path)”,点击OK(图2)


    图2


    3.(图3)在“User Libraries”对话框,能够看到新建的“FrameworksJar4.2.2”自己定义的库名称。点击“Add External JARs...”(选择 classes-full-debug.jar,前提是已编译Android源代码,获取了该jar文件);


    图3


    4.图4中能够看到,自己定义的库“FrameworksJar4.2.2”已经与classes-full-debug.jar相关联。

    点击图4的“OK”。图5的“Finish”;


    图4


    图5


    5.能够看到Java Build Path下的“Libraries”标签页,多了刚才新建的“FrameworksJar4.2.2”库(图6)。


    图6


    6.须要在Java Build Path下的“Order and Export”标签页下,top “FrameworkJar4.2.2”。否则,project可能会编译只是。

    7.在Android应用的project中也能够看到(图7),该“FrameworksJar4.2.2”能够被project使用。


    图7


    注意:

    1.假设直接在Java Build Path下的“Libraries”标签页。选择“Add External Jar...”,并加入“classes-full-debug.jar”。调试project什么时候,可能会出现卡住,弹出 “Java Heap Space”错误。

  • 相关阅读:
    最长回文子串(马拉车)
    ubutun 启动/停止/重启MySQL数据库
    臭大佬_LZW
    Beauty Contest(求凸包最大直径)
    Smallest Bounding Rectangle(最小面积外接矩形)
    Triangle(求凸包最大内接三角形)
    P4196 [CQOI2006]凸多边形
    P4724 【模板】三维凸包(简洁)
    P2600 [ZJOI2008]瞭望塔【半平面交】
    退役记
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/4649630.html
Copyright © 2011-2022 走看看