안 드 로 이 드 에서 leakcanary 사용

1733 단어 Android
LeakCanary 메모리 누 출 검사:
LeakCanary 는 Square 회사 가 내 놓 은 오픈 소스 프레임 워 크(Square 제품,반드시 정품)로 Android 와 자바 의 메모리 유출 이 바보 화 되 고 시각 화 된 메모리 유출 분석 도구 입 니 다.특정한 activity 에 메모리 유출 이 감지 되면 LeakCanary 는 알림 을 꺼 내 내부 유출 위 치 를 찾 습 니 다.이 를 사용 하면 OOM 의 문 제 를 크게 줄 이 고 앱 의 질 을 향상 시킨다.
1. List item
build.gradle 에 인용 추가:
    debugCompile 'com.squareup.leakcanary:leakcanary-android:1.6.1'
    releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1'
    testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1'

2.애플 리 케 이 션 설정 을 만 들 고 애플 리 케 이 션 사용:
import android.app.Application;
import android.content.Context;
import com.squareup.leakcanary.LeakCanary;
import com.squareup.leakcanary.RefWatcher;

public class MyApplication extends Application{
    private RefWatcher refWatcher;

    @Override
    public void onCreate() {
        super.onCreate();

        refWatcher = LeakCanary.install(this);
    }

    public static RefWatcher getRefWatcher(Context context){
        MyApplication application = (MyApplication)context.getApplicationContext();
        return application.refWatcher;
    }
}

3.RefWatcher 를 사용 하여 Activity 모니터링:
public class TestActivity extends AppCompatActivity { private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_test);

    RefWatcher refWatcher = MyApplication.getRefWatcher(this);
    refWatcher.watch(this);
}

}4.직접 실행 할 때 해당 하 는 누 출 app 이 발생 합 니 다.메모리 누 출 이 발생 할 때 알림 표시 줄 에 누 출 원인 을 표시 하고 분석 한 다음 에 leaks app 을 열 면 누 출 된 상세 한 정 보 를 볼 수 있 습 니 다.

좋은 웹페이지 즐겨찾기