5 betterAndroider

尚未进行身份认证

总结自己,一点一滴,用博客见证我的成长。

等级
TA的排名 2w+

Parcel_进程间数据传递

Parcel,即打包。为什么需要打包呢?是为了序列化。如果要在进程之间传递一个整数,很简单,直接传就行了;如果要传一个字符串,就稍微复杂了点:需先分配一块可以容纳字符串的内存,然后将字符串复制到内存中,再传递(新手可能问:为啥不直接把字符串的引用传过去呢?学过C/C++的地球人都知道:进程有自己的内存地址空间,一个进程中的1000地址可能在另一个进程中是100000,Java对象的引用跟本上还

2017-08-23 20:12:14

【Linux】readv与writev

readv和writev函数是Linux中的两个系统调用,类似于read和write函数,不同的是,readv和writev在一次执行过程中可以原子地作用于多个缓冲区,这些缓冲区常常是非连续的。readv和writev的原型如下:#includessize_treadv(intfd,conststructiovec*iov,intiovcnt);ssize_twrite

2017-08-22 11:14:37

Android 中 C++ Thread线程用法

1、Android把线程C++封装Thread类,它是线程的基类 2、使用Thread时,创建一个类继承于Thread类,实现threadLoop()方法是纯虚函数,在子类中实现 3、启动线程,调用run()函数class Thread : virtualpublicRefBase//RefBase封装sp、wp智能指针{public:         

2017-08-14 19:50:53

App添加Selinux权限问题

一、android5.x开始,引入了非常严格的selinux权限管理机制,我们经常会遇到因为selinux权限问题造成的各种avcdenied困扰。 本文结合具体案例,讲解如何根据log来快速解决90%的权限问题。遇到权限问题,在logcat或者kernel的log中一定会打印avcdenied提示缺少什么权限,Command:cat/proc/kmsg|gre

2017-08-03 16:20:54

为Android添加开机启动脚本

本文介绍了一种在Android 4.2.2源码中添加、修改文件或者代码,来达到使android在启动时,执行位于/system/etc/目录下的shell脚本文件的方法。  由于平台不同,可能细节上多有差异,但是大体方式应该是相同的。最近在做项目的过程中,遇到了这么一个需求,需要在Android(4.2.2)启动时候执行以下命令,命令的具体含义不再解释:moun

2017-07-31 14:47:59

Android init.rc如何启动service去执行sh脚本

在Android开发中经常会遇到,在应用层想去执行一个脚本来完成某些底层相关的操作,但在应用层又没有root权限。所以,老大给出一种方法完美解决此问题,又把上层和底层进行了隔离,非常好的策略。1、在需要执行脚本的时候,应用层去设置一个property,在init.rc中去监测此property的值,当监测到此property的值符合要求时,去startservice,来执行我们的

2017-07-29 19:01:10

Android WifiManager.WifiLock 简介

经过查看网上的资料,知道在手机屏幕关闭之后,并且其他的应用程序没有在使用wifi的时候,系统大概在两分钟之后,会关闭wifi,使得wifi处于睡眠状态。这样的做法,有利于电源能量的节省和延长电池寿命等。Android为wifi提供了一种叫WifiLock的锁,能够阻止wifi进入睡眠状态,使wifi一直处于活跃状态。这种锁,在下载一个较大的文件的时候,比较适合使用。WifiLock

2017-07-21 09:09:34

Android编译环境 - 编译Native C的helloworld模块

Android编译环境本身比较复杂,且不像普通的编译环境:只有顶层目录下才有Makefile文件,而其他的每个component都使用统一标准的Android.mk. Android.mk文件本身是比较简单的,不过它并不是我们熟悉的Makefile,而是经过了Android自身编译系统的很多处理,因此要真正理清楚其中的联系还比较复杂,不过这种方式的好处在于,编写一个新的Android.mk来给An

2017-07-17 10:38:13

android之APP模块编译

一,如何把app编进系统   a.源码编译,在packages/apps目录下有安卓原生的app,以Bluetooth为例,源码根目录下有Android.mk文件:   packages\apps\Bluetooth[html] viewplain copyLOCAL_PATH:= $(call my-dir)  include

2017-07-13 09:59:47

清华镜像下载Android源码

注意:本镜像是AOSP镜像,AndroidSDK因版权原因,我们不能提供镜像服务。参考Google教程 https://source.android.com/source/downloading.html,将 https://android.googlesource.com/ 全部使用 https://aosp.tuna.tsinghua.edu.cn/ 代替即可。由

2017-04-22 18:21:06

Android framework add service

From hereAndroid系统本身提供了很多系统服务,如WindowManagerService,PowerManagerService等。下面描述一下添加一个系统服务的具体步骤。1、 撰写一个aidl文件,定义服务的接口,将在编译过程中通过aidl工具生成对应的java接口。一般系统服务的aidl文件都放在framework\base\core\java\

2017-04-19 14:11:31

is 32-bit instead of 64-bit动态库错误分析

转载自:http://blog.csdn.net/chewbee/article/details/51973273前段时间因项目需要,需要MP3格式的录音,需要引用LAME开源库,在引用so库文件时,提示Java.lang.UnsatisfiedLinkError:dlopenfailed:“liblame.so”is32-bitinsteadof64-bit错误,网上

2017-04-13 10:45:16

ViewPager子View滑动事件冲突解决

事件分发:publicbooleandispatchTouchEvent(MotionEventev)Android事件以隧道方式逐层向下传递。事件首先由dispatchTouchEvent方法分发,分发逻辑如下:returntrue;由该dispatchTouchEvent方法消费并且停止分发。returnfalse;返回给父view的onTouch方法处理

2016-11-10 16:48:22

android中修改framework层代码后怎样操作才能看到修改后的效果?

1.下面方法适合真机:下载android源码,然后编译你修改的framwork的代码,会生成framework.jar,然后push到system/framework目录下,重启机器!ok 2,下面方法适合模拟器: (1):用unyaffs解压,你下载的sdk目录下system.img,然后替换其中的framework.jar,然后再压缩成新的system.img;然后启动模拟器就ok

2016-11-09 11:05:38

一个三流学校程序员的奋斗

文章是转载的,我不是一个毅力很强的人,总得一些激励人的文章来激励自己我也在一个三流的学校,在找有关考研的文章的时候看到这篇文章觉得不错,不敢独享,拿出来共勉……看完后我又一次明白,勤能补拙,一个人的成功,往往在于坚持没有挫折,不经历艰难的日子,就没有美好的明天……忘了是谁说的:当你感觉到艰难的时候,正是你在走上坡路的时候文章比较长,且写的比较早,专业术语也很多,但是

2016-11-09 10:11:08

Realm数据库的基本操作

publicclassBaseRealmDao{privateRealmrealm;publicBaseRealmDao(Realmrealm){this.realm=realm;}/***添加(性能优于下面的saveOrUpdate()方法)**@paramobject

2016-11-04 17:09:15

UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别

这是一堂关于UML基础知识的补习课;现在我们做项目时间都太紧了,基本上都没有做过真正的class级别的详细设计,更别提使用UML来实现规范建模了;本篇主要就以前自己一直感觉很迷糊的几种class之间的关系进行整理,让我们在真正用UML进行比如类图设计时能够更加清晰明了;以下就分别介绍这几种关系:继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己

2016-10-21 11:33:28

viewpager中彻底性动态添加、删除Fragment

版权声明:本文为博主原创文章,未经博主允许不得转载。[java] viewplain copy "font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">"white-space:pre">   viewpager嵌套fragme

2016-10-08 13:01:43

Android App的设计架构:MVC,MVP,MVVM与架构经验谈

和MVC框架模式一样,Model模型处理数据代码不变在Android的App开发中,很多人经常会头疼于App的架构如何设计:我的App需要应用这些设计架构吗?MVC,MVP等架构讲的是什么?区别是什么?本文就来带你分析一下这几个架构的特性,优缺点,以及App架构设计中应该注意的问题。1.架构设计的目的通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦

2016-10-06 17:53:32

如何解决failed to push some refs to git

可以通过如下命令进行代码合并【注:pull=fetch+merge]gitpull--rebaseoriginmaster

2016-09-27 11:24:55

查看更多

勋章 我的勋章
    暂无奖章