
Android
文章平均质量分 87
Ron_Tang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
浅谈android suid无效问题
让我们直接进入主题吧!1.suid只针对可执行文件有效,貌似不直接支持sh脚本。2.其他权限用户要想调用suid程序,一定要把suid程序可执行权限放开。3.也是最重要的一点,suid程序不能放在 mounted nosuid挂载点的文件夹里,否则无法获取相应的权限。4.通过此命令$ adb shell cat /proc/mounts | grep nosuid获取m原创 2012-12-02 11:34:23 · 2591 阅读 · 0 评论 -
Android栈分析工具
当在调试Android的时候,会遇到各种各样的崩溃问题,此时系统会打印出一些trace信息.这些信息包含当前pc及相关的栈信息.为了方便分析类似的问题.结合之前的分析工具及Android的adbs,做了进一步的改善,可以直接分析crash文件,而不用再手动指定symbols-dir. 由于博客不支持上传附件, 故把原文粘贴如下,把下面的内容拷贝到文件中,命字为stack. 在linux或者unix转载 2014-07-25 11:24:11 · 875 阅读 · 0 评论 -
Cocos2d-x内存管理解析
Cocos2d-x引擎的核心是用C++编写的,那对于所有使用该引擎的游戏开发人员来说,内存管理是一道绕不过去的坎。关于Cocos2d-x内存管理,网上已经有了许多参考资料,有些资料写的颇为详实,因为在内存管理这块我不想多费笔墨,只是更多的将思路描述清 楚。一、对象内存引用计数Cocos2d-x内存管理的基本原理就是对象内存引用计数,Cocos2d-x将内存引用计数的实现放在了顶层父类C转载 2014-07-28 13:29:22 · 761 阅读 · 0 评论 -
logcat 命令使用方法
Android日志系统提供了记录和查看系统调试信息的功能。日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过logcat命令来查看和使用.在使用logcat之前,请确保手机的USB调试模式已经开启,可以通过"Setting->Application->Development->USB debugging"来开启。logcat本身是android的shell的一个命令,你可转载 2014-08-04 09:38:03 · 1192 阅读 · 0 评论 -
Android系统级深入开发输入系统
用户输入系统8.1 用户输入系统结构和移植内容 Android中,用户输入系统的结构相对简单,主要的输入硬件设备是键盘、触摸屏、轨迹球等。在Android的上层中,可以通过获得这些设备产生的事件,并对设备的事件做出响应。在Java框架和应用程序层,通常使用运动事件获得触摸屏、轨迹球等设备的信息,用按键事件获得各种键盘的信息。Android用户输入系统的基本层转载 2014-07-31 19:05:08 · 2420 阅读 · 0 评论 -
Android的用户输入处理
Android的用户输入系统获取用户按键(或模拟按键)输入,分发给特定的模块(Framework或应用程序)进行处理,它涉及到以下一些模块:Input Reader: 负责从硬件获取输入,转换成事件(Event), 并分发给Input Dispatcher.Input Dispatcher: 将Input Reader传送过来的Events 分发给合适的窗口,并监控ANR。Input Ma转载 2014-07-31 19:05:18 · 2236 阅读 · 0 评论 -
Android按键事件发布流程
总结一下,Android按键事件发布流程原创 2014-09-12 10:46:58 · 2080 阅读 · 0 评论 -
Android输入系统之InputChannel(上)
Android输入系统之InputChannel(上)前面的“锤子快捷键”相关文章已经分析了输入事件的读取,处理,分发。我们知道事件的传递是以window为单位传递的,即server只负责将事件传递给某一个或者多个window,window然后再将事件传递给某一个具体的view。一个activity或者dialog对应一个window,但是事件只传递给合适的window,比如对于按转载 2014-09-10 13:27:59 · 1132 阅读 · 0 评论 -
Android输入系统之InputChannel(下)
Client 对输入事件处理 输入事件,比如按键事件并不是全部被window的view处理了,比如Back键,如果此时系统输入法是显示的,其实该键首先会去关闭输入法,而window的view是接收不到这个键的,这个就是事件处理器链实现的,这个链上又各种处理器,它们按照处理的优先顺序添加咋链表上输入事件处理链 [java] view plainco转载 2014-09-10 13:33:45 · 1061 阅读 · 0 评论 -
深入学习C++前向声明
1.我们为什么需要前向声明?2.前向声明的几点事项 前向声明不能声明被typedef 的类型明,可以前向声明其他命名空间类型,可以前向声明模版,前向声明是指声明一个在其他中文件定义的类型,一种不完全声明,前向声明时不能含有未声明类型,但可以包含前向声明,所有前向声明需共同遵守前向声明的使用规则,我们只能声明或定义不完全类型的指针或引用,而且不能对指针进行运算,不能解引用,亦不能使用。原创 2013-12-19 15:44:29 · 7739 阅读 · 0 评论 -
Android Framework Input 机制分析
App进程的Java层的ViewRoot对象,请求与底层建立通信,通过Binder机制调用WindowManagerService | 进而转入到服务进程Java层,由服务进程的Java层通过JNI层层调用,至Native层 InputTransport ,由此创建一对UNIX_AF socket ,将socket的描述符存入C++ InputChannel对象,用于事件传递。之后JNI层层返回,原创 2015-01-14 14:55:42 · 1131 阅读 · 0 评论 -
Android frameworks Singleton
/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * Yo原创 2013-12-20 15:12:23 · 2644 阅读 · 0 评论 -
告诉你可能不知道的秘密之Android轻量级引用LightRefBase
...原创 2013-12-29 18:16:16 · 1249 阅读 · 0 评论 -
浅谈游戏开发中碰撞检测
本文以我自己设计植物大战僵尸碰撞检测算法为例进行分析,浅谈游戏开发中碰撞检测算法。本文所提及的碰撞算法与数据结构也可应用于跑酷等游戏中。原创 2014-05-19 09:42:00 · 3260 阅读 · 0 评论 -
Android input处理机制(四)线程安全
1.我的疑问我很好奇,好奇为什么只有InputReaderThread单一线程维护事件和设备并且其持有InputReader对象又是单例,但却需要在多数方法中使用了AutoMetux来加强线程安全。2.探索发现1.原因是我还并没有真正理解Android的Metux,同一个Metux对象可以锁定多段代码,而不仅仅锁定一个函数或一个代码块那么简单。2.InputRead原创 2014-01-13 16:40:28 · 826 阅读 · 0 评论 -
浅谈android系统java调用C++函数传参过程
读了《深入理解android》卷一,发现了一点小问题,层层查看源码查资料,浅谈下此文。 //源码目录 frameworks/base/core/java/com/android/internal/os/ZygoteInit.java /** * Prepare the arguments and fork for the system server pr原创 2012-11-29 21:58:20 · 1807 阅读 · 0 评论 -
如何仿写iOS微信打飞机
仿写打飞机学习总结一、Android微信打飞机与iOS微信打飞机的区别1.Android打飞机,同一时间屏幕上不止存在一个子弹,可能有三颗或更多,而iOS上的打飞机任意时间屏幕上至多存在一个子弹。2.Android打飞机子弹是匀速的发射频率固定,而iOS上的打飞机子弹的运动速度可能与其发射坐标相关,距离屏幕上方越远子弹的飞行速度越快,距离敌机越近,发射频率越高。3.Android打原创 2013-09-07 20:07:32 · 1495 阅读 · 4 评论 -
Android智能指针学习笔记
1.强指针支持指向两种超类型的引用对象,一种是轻量级引用对象,继承自LightRefBase,另一种姑且称之为重量级引用对象,继承自RefBase。2.弱指针只支持指向重量级引用对象,继承自RefBase。3.引用对象负责维护自己的引用计数,但引用计数器增加或减少的消息由sp或是wp智能指针对象发送。4.LightRefBase和RefBase维护引用计数的方式不相同,前者直接使用in原创 2013-12-03 15:13:34 · 720 阅读 · 0 评论 -
在Android源码环境中使用STL库
如题,需要在编译模块Android.mk文件中加入LOCAL_SHARED_LIBRARIES := \ libstlport \LOCAL_C_INCLUDES := \ bionic \ external/stlport/stlport \ bionic是需要的,里面虽然不是标准库文件,但标准库文件可能需要它。 另外,并不是所有的STL原创 2013-12-19 15:28:56 · 2263 阅读 · 0 评论 -
解决/usr/bin/ld: cannot find -luuid编译错误
今天在编译Android代码的时候出现 “/usr/bin/ld: cannot find -luuid” 错误,在网上找了些资料发现是 gcc编译时找不到链接的库,解决办法如下: 1. 在终端下运行命令: locate libuuid 说明:出现的错误是luuid,为什么在locate后面是 libuuid,这是由于链接库的命名造成的。假如出现了 “/usr/bin/l转载 2013-12-20 16:53:35 · 9418 阅读 · 1 评论 -
Android input处理机制(二)改键机制
本文主要总结一下Android平台的改键机制,从三个层次 驱动 键盘布局文件 InputReader所涉及的类: class EventHub; struct Device; class KeyMap; KeylayoutMap; class InputReader;所涉及的文件:frameworks \EventHub.h;原创 2013-12-25 11:22:53 · 2842 阅读 · 0 评论 -
Android input处理机制(一)InputReader
本文主要总结了android源码InputReader处理消息的机制,本简要说明了新老android源码在此方面的差异。原创 2013-12-09 17:27:00 · 3188 阅读 · 0 评论 -
Android input处理机制(三)InputDispatcher
1.回顾通过前两篇总结Android input处理机制(一)InputReader ,Android input处理机制(二)改键机制,我们大致了解了InputReader和EventHub处理机制,EventHub负责处理设备与事件相关问题。InputReader通过使用EventHub循环获取事件,当没有事件发生时InputReaderThread会休眠。2.InputD原创 2014-01-09 17:02:14 · 11730 阅读 · 0 评论 -
用 logcat 命令来查看 android 系统日志缓冲区的内容
*注:可以用 adb logcat> 路径/文件名 来保存, 此命令执行之时起的全部日志信息到一个文件里,ctrl+ C 结束日志输出; 后面不加 >路径/文件名 的话,则在 stdout (终端窗口)中输出!例如:$ adb logcat-v long Checkin *:S >~/桌面/log.txt一、在 Java 与 C语言中输出日志:1) Java代码转载 2014-01-09 17:07:38 · 1653 阅读 · 0 评论 -
android native service编写及两个服务进程通讯
1、android service简要说明:Android Service :又称为 Java Service ,是实现在框架层里的 Service ,使用Java语言编写。Native Service :又称为 System Service ,是实现在 Runtime 层里的 Service 。使用C++语言编写。对于这两种service来说,两个对等service通讯都是利转载 2014-01-09 17:12:18 · 1332 阅读 · 0 评论 -
android截屏学习历程
本文叙述我在读研期间研究android屏幕共享有关截屏方面的经历。分享了Android多种截屏方法,实现细节以及一些注意事项,本文引用了许多其他网络文章并给出了链接,最后感谢大家。原创 2012-11-18 16:24:15 · 5774 阅读 · 10 评论