
Android开发
文章平均质量分 55
落叶似秋
努力不一定成功,但不努力会后悔。
展开
-
Android用回调函数实现Service中更新Activity进度条
场景:博主做个文件传输的项目,有名称为TcpService的类。该类继承至Service类,主要负责Socket通信,在Socket传输文件的时候,我们需要实时更新UI来提高用户体验。假设我们更新的是SessionActivity类的UI,该类继承至Activity。并且SessionActivity绑定TcpService。现在我们就要用回调函数在TcpService类里面更新SessionAc原创 2016-07-02 15:36:16 · 4276 阅读 · 0 评论 -
编译Xposed
Xposed是Android平台上的有名的Hook工具,用它可以修改函数参数,函数返回值和类字段值等等,也可以用它来进行调试。Xposed有几个部分组成:修改过的android_art,这个项目是Xposed最核心的东西,它修改部分art代码,使Hook成为可能Xposed native部分,该部分主要提供给XposedBridge可调用api和调用修改过的android_art的api...原创 2018-08-20 18:40:31 · 2411 阅读 · 4 评论 -
Android编译自己的程序到/system/bin
背景有时候我们想创建一个程序,放在系统中,供其他APP执行。我们知道,在生成system.img的时候,编译系统会将out/target/product/[product]/system/bin目录打包进去。所以,我们想办法让编译系统在编译的过程中,把我们的程序编译了,并把编译生成的二进制文件自动放到out/target/product/[product]/system/bin。做法...原创 2018-06-19 16:48:16 · 12053 阅读 · 4 评论 -
Android frameworks层读写sdcard
场景和思路我们想在frameworks层读写sdcard,但是直接读写是不行的,提示权限不足。于是就想怎么把它所属的进程找出来,然后给这个进程加sdcard读写权限。做法android.os.Process.myPid()方法可以获取当前代码所在的进程的id。再通过ps|grep [pid]命令,我们可以知道frameworks中的代码所属system_server进程,而syst...原创 2018-06-08 11:11:48 · 5348 阅读 · 11 评论 -
【Android】自己动手做个扫雷游戏
本文链接:http://blog.youkuaiyun.com/e_one/article/details/520889831. 游戏规则扫雷是玩法极其简单的小游戏,点击玩家认为不存在雷的区域,标记出全部地雷所在的区域,即可获得胜利。当点击不包含雷的块的时候,可能它底下存在一个数,也可能是一个空白块。当点击中有数字的块时,游戏会展现当前点击块所包含的数字。当点击空白块时,地图会展开,形成一个大小和形...原创 2016-08-01 20:59:29 · 25297 阅读 · 20 评论 -
Android上的C/C++语言开发工具--simpleC开源
介绍simpleC是Android上的C/C++语言开发工具,可以编辑并编译C/C++代码,并支持代码高亮显示,头文件和常用函数自动补全,代码自动缩进,编辑器文本大小缩放,快速注释/取消注释代码,编辑时撤退等功能。 编译器使用gcc编译器,词法分析器采用JFlex。该文本编辑器采用自定义View来绘制文本,高效绘制,并且可以轻易改成其他语言使用的文本编辑器,不仅如此,想要将文本编辑器扩展成更强原创 2017-10-03 19:56:11 · 8106 阅读 · 4 评论 -
[Android]自己动手做个拼图游戏
目标在做这个游戏之前,我们先定一些小目标列出来,一个一个的解决,这样,一个小游戏就不知不觉的完成啦。我们的目标如下: 1. 游戏全屏,将图片拉伸成屏幕大小,并将其切成若干块。 2. 将拼图块随机打乱,并保证其能有解。 3. 在屏幕上留出一个空白块,当点空白块旁边的块,将这块移动到空白块。 4. 判断是否已经拼好。 实现目标1.将图片拉伸成屏幕大小,并将其切成若干块。想拉伸成屏幕大小,首先要原创 2017-10-20 12:49:17 · 16873 阅读 · 22 评论 -
【数据结构】安卓平台下深度优先搜索的应用--走迷宫
在游戏中,我们常常可以看到npc很聪明,自己能找到玩家,游戏中有地图,npc在地图中以特定的算法搜索以找到玩家。今天我们来看看一种基本的图搜索算法——深度优先搜索算法深度优先搜索算法讲的是1。从某个点开始,遍历所有与该点相连的点2。如果找到一个点并且该点没有访问过,则把这个点设为已访问3。对后面的点执行1,2操作。4。如果某个点所连接的所有点已被访问过,回溯,直到回溯到原创 2016-03-12 12:52:03 · 5345 阅读 · 0 评论 -
Android在线游戏联机平台开源
背景当以前开始玩安卓机的时候,就发现Android可以玩以前在红白机玩的游戏,而且可以联机,感觉真的很神奇,加上自己对红白机有特殊的情感,当时就琢磨着什么时候把这个模拟器改成可以在线联机,后来可能是运气吧,恰好找到了模拟器的源代码,于是就开始看源码琢磨,发现好像代码并不是很复杂,底层的模拟器C,C++和汇编代码可以不懂,只需要了解如何在上层调用接口就好。原创 2017-09-06 12:53:56 · 2675 阅读 · 0 评论 -
Android实现用文字生成图片
效果图我们先来看看效果图,可以看到下图由各种颜色的”美”字拼接而成,形成了一张不一样的图片。 原理生成这种图片的原理很简单,但是当时看开源项目时愣是看不懂,因为没学过Python,但是仔细研究,终于能慢慢的理解该开源项目源码,并把它改写成Android平台的源代码。下面把这个算法的主要内容讲给大家,该算法大致原理如下: 1.根据原图片的大小和字体的大小创建一张空白图片 2.把原图片按字体的大小原创 2017-08-20 16:39:47 · 8058 阅读 · 1 评论 -
【Android】安卓5.x内存清理的实现
虽然谷歌不推荐内存清理,但是有时候我们却有这个需求。所以,还是想办法自己实现,想内存清理,就先要获取正在运行的进程,然后逐个将他们杀死。这里使用的方法是免root权限的方法。华为emui3.1(安卓版本:5.1.1)测试通过,可以终止音乐播放服务。一。终止程序方法和权限在安卓4.x的时候,我们可以使用ActivityManager.killBackgroundProcesses(Strin原创 2016-01-10 09:51:18 · 7037 阅读 · 0 评论 -
【Android】在图片上画其他内容的方法
步骤如下:1。创建一个位图对象,即得到想要在上面画字的图片2。给画布对象设置第一步得到的位图。3。在画布上绘制内容,比如:字,各种形状,位图等等,此时在画布上绘图,相当于在位图上画。4。现在的位图对象就是上面有新内容的位图对象。随便你怎么操作了(保存,显示都可以)。博主写个例子,从文件生成得到一个位图对象,并且在上面绘制文字,最后再用ImageView显示Bitmap的绘制结果原创 2016-07-03 14:42:28 · 3950 阅读 · 0 评论 -
【Android】远程文件管理传输协议的设计
上次参加“软件杯”做了个文件传输软件,这个文件传输软件有管理远程文件/目录的功能,所以当时自己就编写了一个简单的文件管理传输协议。文件管理传输协议有比较成熟的协议,像ftp协议,它是用一端作为服务端,一端作为客户端来进行访问。本篇文章写的协议也与它类似。我们是两端都作为服务端,也都作为客户端来进行互相传输。相对于长连接,这种方式更加方便,简单。本文讲的代码是Android平台的,其他平台也可以参考原创 2016-08-30 10:18:27 · 2971 阅读 · 0 评论 -
使用NDK编译成多个平台的代码
1,在jni目录中的Application.mk中添加下面一行(没有Application.mk文件就创建一个)APP_ABI := all2,把NDK所在的路径加入环境变量3,在cmd窗口中转到jni源码路径执行ndk-build原创 2017-04-14 20:42:40 · 2413 阅读 · 0 评论