Avoid Memory Leaks in Android
Java is a garbage-collecting-language, the garbage collector deals with memory properly on most cases. But we may still encounter memory leaks due to some logical bugs. I'll list some common cases that cause
A collection of 23 posts
Java is a garbage-collecting-language, the garbage collector deals with memory properly on most cases. But we may still encounter memory leaks due to some logical bugs. I'll list some common cases that cause
As I write in the previous post Android Message Handling Mechanism, all messages dispatched to main thread will be handled in the looper of main thread. If a message cost a long time,
I've been working on a performance monitor library for some time. While I'm implementing the looper-monitor feature, I found it's necessary to get clear on the Android message handling mechanism. In this article,
Preface Recently, I've been working on a technical story which inserts more than 100,000 records at startup. The whole application relies on these data, so I have to make the insertion synchronous,
Preface Before we get started, let's see a snippet first. public class Foo { { bar = 1; } private int bar = 3; private static int baz = 4; static { baz = 2; } public Foo() { bar = 5; } public static
If an application is removed in PC, a web page will pop up usually. This make developers get feedback from users. Recently I've been working on how to get the same feature on
Recently I read the source code of Google's multidex library due to some reasons. I'll focus on how to load multiple dex files rather than how to split classes into multiple dex files
Preface In this post, I assumed the readers have basic knowledge of ELF file format. I'm gonna talk about the dynamic linking and relocation in this post. Although it's the beginner level, basic
Recently, I've been asked about the code in "TinyInjector". The code for calling fuctions in remote process made somebody confused. Let's take a look at the code. regs.ARM_pc = function_
Background As I wrote in the previous post "Shared Library Injection in Android", I've made an injection util on Android. The injection util works perfectly on Android 4.0 device, but
Introduction Injection is a technique that enable us running our code inside a remote process. Usually, we compile the code into a shared library and force the remote process to load it, so