android找茬源码
❶ 怎样查看 Android APP 源代码
需要把反编译的apk存放到apktools同级文件夹目录下,然后运行要查看的安装包,具体操作如下:
1、首先把反编译的apk存放到apktools同级文件夹目录下,如下图所示。
❷ 怎么在windows下查看android源码
先下载源码,最新为2.2
2.找SDK目录
安装的SDK到我的目录E:\
E:\android-sdk-windows\
找到目录 结构如下:
E:\android-sdk-windows\
-platforms
+android-3(android-1.5)
+android-4(android-1.6)
………..
+android-6(android-2.0)
+android-7(android-2.1)
+android-8(android-2.2)
最高的android-8对应的是SDK2.2。
在android-8文件中新建sources然后把下载好的源码(android-2.2-froyo-src.zip)解压到这个文件下。
3.改配置文件(修改红色部分)
找到android-8目录下的文件source.properties并将其修改如下:
### Android Tool: Source of this archive.
#Wed Oct 13 14:00:16 CST 2010
Pkg.Desc=Android SDK Platform. 2.2_r1
Pkg.UserSrc=true
Archive.Arch=ANY
Platform.Version=2.2
Pkg.DescUrl=sources
Archive.Os=WINDOWS
Pkg.SourceUrl=sources
Pkg.Revision=2
AndroidVersion.ApiLevel=8
大公告成,重启Eclipse,按ctril+关键字、类名 或者按F3就可以点进去了,可以看到源码了吧!
PS:已经下载好的源码,可以把core目录放入到sources中即可。。。
❸ android怎么修改源码
在Android界面的系统status bar上添加home,back,menu三个菜单,并完成对应的系统功能。并有higlight效果,修改status bar 高度和status bar上的文字尺寸。
这需要修改android sdk才能完成,我用的是eclair.下面就我的操作进行叙述。
1.首先完成界面显示效果。
需要修改文件
./frameworks/base/services/java/com/android/server/status/StatusBarPolicy.java,仿照mBatteryIcon等icon的添加方式添加自定义的icon,图片名称指定就好了。另外还要记得修改./frameworks/base/core/res/res/values/arrays.xml,这里定义了icon的slot,并且决定了icon的摆放顺序。
这样,你需要的icon按键就可以显示在系统的status bar上面了。
2.判断touch event是否按动了某个icon
需要修改的文件
./frameworks/base/services/java/com/android/server/status/StatusBarView.java
首先在onTouchEvent函数中,获取当前event的坐标,然后比较是否在某个按键范围之内。由于系统对于statusBar的范围已经有了定义,所以这里只需要比较横坐标就可以了。
其次,也是这一步最关键的,怎么获取具体某一个icon的左右边界坐标呢?系统的status bar左边显示的图标都是notification, 右边显示的是系统icon. 也就是说左边icon属于mNotificationIcons,右边的icon属于mStatusIcons. 在文件StatusBarView.java中出现的offset = getViewOffset(mStatusIcons),得到mStatusIcons的最左边的icon的left横坐标。用N = mStatusIcons.getChildCount()得到共有几个系统icon,其中包含visibility为false的icons.用mStatusIcons.getChildAt(N-i)得到的是从右边数第i个的icon view. 这个view的getLeft()+offset就是这第i个icon的左边横坐标,对应的getRight()+offset就是这第i个icon的右边横坐标。本例中home键是右边第2个icon.
3.定义icon响应事件
这里使用的方法是在StatusBarView.java中向
./frameworks/base/services/java/com/android/server/status/StatusBarPolicy.java发送一个Broadcast,让StatusBarPolicy来完成具体的事件操作。这里需要注意的是不仅要在./frameworks/base/core/java/android/content/Intent.java中定义intent,还要在StatusBarPolicy的构造函数中添加该intent的过滤动作,即filter.addAction(Intent.ACTION_BACKICON_CHANGED).例如,按动了back键,如果当前事件为action_up,就向系统发送一个keyEvent,keyCode为KeyEvent.KEYCODE_BACK. 这里借用的是./frameworks/base/cmds/input/src/com/android/commands/input/Input.java中的sendKeyEvent函数,直接拷贝过来,按照需要稍微修改一下形参就可以了,过程不要修改。
需要说明的是,当点击statusBar可以拉出来一个notification列表,当这个列表显示出来的时候,这三个back, menu, home键的响应速度会非常慢,所以这时不响应事件并隐藏这三个键。具体做法是在StatusBarView的onTouchEvent()中判断mService.mExpanded或者 mService.mTracking为真时就不做响应。mService是StatusBarService对象。隐藏三个键也是用Broadcast来做的,但这个intent是由StatusBarServie发出来的,当mExpandedVisible = false时显示,当mExpandedVisible = true时隐藏。
这里还同时完成了highlight换图的动作,也是用Broadcast来做得,处理过程一样,就是需要区分action_down和action_up就可以了。
4.调整status bar的高度
如果你需要显示较大的屏幕尺寸,同时statusBar的高度要拉大,上面的icon的size也需要调大。为了协调一致,显示时间的字体和notification显示的日期的字体也需要调大。具体做法如下:
a.调节status bar icon的size: 只调节status_bar.xml的textSize标签似乎不起作用,同时又修改了./base/services/java/com/android/server/status/StatusBarIcon.java的t.setTextSize(32);语句才成功。不知道修改status_bar.xml的<com.android.server.status.AnimatedImageView>标签下的layout_height值是不是必须的,反正我是一起都给改了。
b.调节status bar height: ./base/core/res/res/values/dimens.xml 找得我好辛苦!不知道还需不需要修改./base/core/res/res/values/themes.xml中的Window attributes的windowTitleSize值,反正我也给改了。
c.调节notification显示日期字体的大小,修改status_bar.xml的<com.android.server.status.DateView>的textSize值。
到这里,就完成了所有工作,看看效果吧。
❹ 求"大家来找茬"游戏的JAVA源代码
其实不难,原理如下:
建立数据结构,此结构应该有的属性为:
1。图A(原图),
2。图B(有差别的图),
3。不同点的坐标区域
原理:窗口中显示两个图,在每个图上添加鼠标点击事件,在鼠标点击后在判断坐标是否在坐标区域内
用NetBeans半小时应该就能做好,程序不难,麻烦的是图片的制作或者寻找,然后规定坐标区域
回答完毕,如果你想要程序我又时间了可以考虑给你做一个
❺ 怎样查看 Android APP源代码
将apk文件拷贝至sdcard上。
命令顺序如下:
进入Android sdk文件夹/tools目录下
输入adb shell
输入su
输入cd data
输入cd app
这时就可以看到你安装的所有的apk文件。输入cp 空格 对应的apk 空格 /sdcard/
这样就将apk文件拷贝出来了。
将apk文件后缀直接变成rar格式,可以看到熟悉的目录结构了,
其中xml文件打开后都是二进制的,无法查看。
这时就用到了一个android4me的AXMLPrinter2工具。(请自行网络搜索)
输入以下命令,将xml文件解析出来
java -jar AXMLPrinter2.jar showtimes_list.xml
此命令是在命令行中查看此showtimes_list.xml
将showtimes_list.xml生成xml文件,则输入以下命令:
java -jar AXMLPrinter2.jar showtimes_list.xml > h.xml
目前进行到这一步,只能看到xml文件的内容,其工程中的java源文件还是看不到,看目录结构下有一个classes.dex文件,我们需要将dex文件变为jar文件。
这里用到了另一个工具dex2jar。(自行搜索下载)
在Windows下解压之后的目录如下图所示:
在命令行中,进入到此目录下:
在Windows下,输入以下命令:
dex2jar.bat c:classes.dex
运行完之后,在C盘会多一个classes.dex.dex2jar.jar文件,此文件就是我们需要的jar文件。
利用jd-gui,将jar文件反向工程为java代码。(请自行搜索下载)
它分为Windows、Linux、和max三个版本,这里我下载的是Windows版本的。
解压之后,双击运行exe文件,选择classes.dex.dex2jar.jar文件,相应的jar文件中的Java文件就被反向工程显示出来了!
❻ 如何用android studio搜索某个类的源码
工具/原料
Android studio
方法/步骤
要进行查找的代码中模块中,就需要先进行选中到当前的文件,这样的查找的功能才能使用,使用光标进行选中该文件中代码。
光标选中完成之后,进行点击Android studio中的菜单中的“Edit”的选项。
就会弹出了一个下拉的菜单中,进行选择下拉的菜单中的“Find”的选项菜单。
这样就会弹出了下一级的菜单中,进行选择下一级菜单中的“search structurally”的选项菜单。
这样就会弹出了strutural search的选项框,然后在search templat中输入框中,进行输入搜索内容,点击“find”的选项菜单。
这样就会弹出在底部的位置中弹出了一个Find Template中,并在搜索的结果中内容,将显示文件。
❼ 如何查看Android源码
当我们在eclipse中开发android程序的时候,往往需要看源代码(可能是出于好奇,可能是读源码习惯),那么如何查看Android源代码呢?
比如下面这种情况
假设我们想参看Activity类的源代码,按着Ctrl键,左击它,现实的结果却看不到代码的,提示的信息便是“找不到Activity.class文件”。
此时点击下面的按钮,“Change Attached Source…”,选择android源代码所在位置,便弹出图三的对话框。
第一种是选择工作目录,即已经存在的android应用程序源代码。
第二种分两种方式
(1)选择External File…按钮,添加Jar格式文件或者zip格式文件路径;
(2)选择External Floder…按钮,添加文件夹所在路径。
下面问题就来了,源代码在哪里?不能凭空产生阿。
可以通过Android SDK Manager进行源代码下载;(推荐该种方法),如图四
勾选Source for Android SDK,进行下载即可。
此外也可通过其他途径下载,网上有很多共享的资源。
这里选择第二种方式的(2)方法,选择源码所在目录(即图四下载源代码目录所在路径),如图五
点击“OK”按钮,此时,Activity文件便能够查看源代码了,如图六。
这样就大功告成了!!!
❽ 怎样查看 Android APP 源代码
用压缩软件打开apk文件,解压出根目录中的classes.dex文件
使用cmd ,dex2jar.bat classes.dex命令将classes.dex转换为jar
再用jd-gui打开该jar就可以查看源码了,如果apk安全性好的话,有些代码是看不到的
❾ 如何查看Android系统应用的源码
1、设置好SDK,下载好对应版本的SDK
❿ 如何获取android源代码
当前的Android代码托管在两个方:https://github.com/android 和https://android.googlesource.com之前在 android.git.kernel.org上也有托管,不过现在重定向到了https://android.googlesource.com好在都支持git访问。
google提供的repo工具实际上是一个内部操作git工具来简化操作Android源码的Python脚本。经过尝试,直接使用git工具在ubuntu下可以实现cloneAndroid源码。下面介绍一下方法:
1.获取当前的在github上托管的Androidgitrepositories:
github页面为:https://github.com/android/following。不过这个页面不支持通过wget"https://github.com/android/following"或者curl"https://github.com/android/following"的方式访问,错误信息如下:
这个时候需能做的只能是"tryagain"了。
需要说明的是"不要试图同时并发执行多个gitclone命令",这样会导致大量出现上面贴图中的错误,另外,整个clone过程中耗时最多的gitrepository如下:
kernel_common.gitkernel_msm.gitplatform_frameworks_base.gitplatform_prebuilt.git其中platform_prebuilt.git是google提供的预编译好的二进制文件,包含:各种库文件,jar包,可执行程序等等,如果只是阅读Android源代码,这个gitrepository可以不用clone.