- 博客(22)
- 收藏
- 关注
转载 ContentProviderClient VS ContentResolver
这是一篇翻译自StackOverflow的文章。其主要论述的是ContentProviderClient与ContentResolver的区别。以及我们应该在什么情况下用ContentProviderClient代替ContentResolver。文章的地址是http://stackoverflow.com/questions/5084896/using-contentproviderclient
2017-05-31 17:26:53 3193
转载 (unix domain socket)使用udp发送>=128K的消息会报ENOBUFS的错误
1、Unix domain socket简介unix域协议并不是一个实际的协议族,而是在单个主机上执行客户/服务器通信的一种方法,所用API于在不同主机上执行客户/服务器通信所有的API(套接字API,如AF_INET、AF_INET6等类型的API)相同。unix域协议可以视为是进程之间本地通信IPC的一种。unix域提供两类套接口:字节流套接口(类似TCP)和数据报套接口(类似UDP)
2017-05-31 16:02:31 449
转载 Unix domain socket 的一些小结
1. unix域的数据报服务是否可靠 man unix 手册即可看到,unix domain socket 的数据报既不会丢失也不会乱序 (据我所知,在Linux下的确是这样)。不过最新版本的内核,仍然又提供了一个保证次序的类型 “ kernel 2.6.4 SOCK_SEQPACKET ”。2. STREAM 和 DGRAM 的主要区别 既
2017-05-31 15:52:03 3531
转载 setsockopt设置socket状态
1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));2. 如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经历
2017-05-31 15:13:07 362
转载 TCP 和 UDP 协议发送数据包的大小
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小64bytes最大不能超过1518bytes,对于小于或者大于这个限制的以太网帧我们都可以视之为错误的数据帧,一般的以太网转发设备会丢弃这些数据帧。由于以太网EthernetII最大的数据帧是15
2017-05-31 15:08:15 1173
原创 管道的原子性
一个管道的容量是有限的。POSIX规定,少于 PIPE_BUF 的写操作必须原子完成:要写的数据应被连续的写到管道;大于 PIPE_BUF 的写操作可能是非原子的: 内核可能会把此数据与其它进程的对此管道的写操作交替起来。POSIX规定PIPE_BUF至少为512B(linux中为4096B),具体的语义如下: 其中n为要写的字节数 n n n > PIPE_B
2017-05-31 14:31:53 1329
原创 Something to read
MIT科技评论万字长文追踪有史以来影响世界的颠覆性技术《麻省理工科技评论》发布2017全球十大突破技术《MIT科技评论》:“2016 全球最聪明的50家公司《麻省理工科技评论》十大突破性技术,2016这一年读懂芯片后端报告https://zhuanlan.zhihu.com/c_70349842
2017-05-30 14:18:21 484
原创 ProcessRecord state
259 /** @hide Process does not exist. */260 public static final int PROCESS_STATE_NONEXISTENT = -1;261262 /** @hide Process is a persistent system process. */263 public static final in
2017-05-26 20:14:50 928
转载 如何理解Android中的xmlns && Lint
如何理解Android中的xmlns: http://www.jianshu.com/p/6fcaffaeffd2android中xml tools属性详解: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0309/2567.htmlAndroid xmlns 的作用及其自定义
2017-05-26 15:49:41 226
原创 Android 7.0: Force stop application 3 times during package OTA.
An example of package OTA:Logs:D/DefContainer(15910): Copying /data/local/tmp/com.exmaple.ota.apk to base.apkW/PackageManager( 653): Centralized permission: Package com.exmaple.ota is dec
2017-05-26 11:48:22 1546
原创 About android mk parameters
Android中可能会用到第三方的软件包,这包括Java包.jar和Native包.so。jar包既可通过Eclipse开发环境集成,也可通过编译源码集成,看你的工作环境。假定自己开发的程序为MyMaps,需要用到BaiduMaps的库,包括baidumapapi.jar和libBMapApiEngine_v1_3_1.so。 一、Eclipse中集成第三方jar包及.so动态库M
2017-05-23 17:14:13 1170
转载 What causes java.lang.IncompatibleClassChangeError?
https://stackoverflow.com/questions/1980452/what-causes-java-lang-incompatibleclasschangeerror80 down vote Your newly packaged library is not backward binary compatible (BC) with old
2017-05-23 11:55:13 227
转载 apk,task,android:process与android:sharedUserId的区别
apk一般占一个dalvik,一个进程,一个task。通过设置也可以多个进程,占多个task。task是一个activity的栈,其中"可能"含有来自多个App的activity默认情况下,同一个应用程序中的所有组件运行在同一个进程中,而且绝大多数的应用程序也都是这样的。但是,如果我们想要控制让某个特定的组件属于某个进程,我们可以在manifest文件中进行配置。 在 每种组件元素(a
2017-05-20 15:16:14 333
原创 android:filterTouchesWhenObscured
In Package installer activity.In PackageInstaller/res/layout/install_confirm.xml98 99 LinearLayout100 android:layout_width="match_parent"101 android:layout_heigh
2017-05-19 20:26:54 3377
原创 Android instrumentation test
1. JUnit ref: http://wiki.jikexueyuan.com/project/junit/extensions.html2. 运行测试apk相关caseadb shell am instrument -w com.ww.test/android.test.InstrumentationTestRunnercom.wxj.test为测试apk的package
2017-05-18 19:40:18 374
原创 ClassCastException problem in getUnfilteredActiveNetworkState
Crash logs.12-19 03:52:30.914 641 3002 D ConnectivityService: notifyType LOST for NetworkAgentInfo [WIFI () - 108]12-19 03:52:30.915 641 3002 D CSLegacyTypeTracker: Sending disconnected broa
2017-05-18 17:47:09 664
原创 Android 7.0 ActivityManagerService 广播(Broadcast)相关流程分析
参考:http://blog.csdn.net/gaugamela/article/details/53515680 (Android 7.0 ActivityManagerService(5) 广播(Broadcast)相关流程分析)总结:1. BroadcastReceiver的注册类型 (静态注册,动态注册)2. 广播的种类普通广播 普通广播由发送方调用sendBro
2017-05-14 19:33:27 811
原创 Activity中bindService和registerReceiver的清理工作
在Android开发中,我们经常需要注册BroadcastReceiver和bind service。接口函数如下:public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter);public void unregisterReceiver(BroadcastReceiver recei
2017-05-13 18:35:33 2218
原创 onSaveInstanceState和onRestoreInstanceState触发的时机
先看图:Android中的activity通过onSaveInstanceState()方法保存activity的状态,在onCreate或者onRestoreInstanceState方法恢复状态,如果是通过onRestart方法前端运行的话,只会执行onSaveinstanceState方法。直接看代码:[java] view plain copy
2017-05-13 17:15:48 641
原创 package info not found issue
之前遇到一个问题,如下:https://cmi-web-tools.amazon.com/crashboard/?start=2017-04-21&end=2017-04-28&dtype=ALL&cdesc=7814d32f7103b7cadd6a3a7e09a678d98c499e78[Events]java.lang.RuntimeException: Unable to in
2017-05-09 16:24:33 2802 1
原创 Android 7.0 系统应用提前获得runtime-granted permission
该功能在frameworks/base/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java中实现。大概的实现思路是,针对每个系统应用,调用 mService.grantRuntimePermission(pkg.packageName, permission, userId);函数来实现提
2017-05-03 15:05:18 572
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人