Android 스튜디오 :
정적 필드에 Android 컨텍스트 클래스를 배치하지 마십시오. 이것은 메모리 누수입니다 (또한 Instant Run을 중단 함).
그래서 두 가지 질문 :
# 1 startService
컨텍스트에 대한 정적 변수없이 정적 메서드에서를 어떻게 호출 합니까?
# 2 정적 메서드 (동일)에서 localBroadcast를 어떻게 보내나요?
예 :
public static void log(int iLogLevel, String sRequest, String sData) {
if(iLogLevel > 0) {
Intent intent = new Intent(mContext, LogService.class);
intent.putExtra("UPDATE_MAIN_ACTIVITY_VIEW", "UPDATE_MAIN_ACTIVITY_VIEW");
mContext.startService(intent);
}
}
또는
Intent intent = new Intent(MAIN_ACTIVITY_RECEIVER_INTENT);
intent.putExtra(MAIN_ACTIVITY_REQUEST_FOR_UPDATE, sRequest));
intent.putExtra(MAIN_ACTIVITY_DATA_FOR_VIEW, sData);
intent.putExtra(MAIN_ACTIVITY_LOG_LEVEL, iLogLevel);
LocalBroadcastManager.getInstance(mContext).sendBroadcast(intent);
사용하지 않고 이것을 수행하는 올바른 방법은 무엇입니까 mContext
?
참고 : 내 주요 질문은 호출 메서드가있는 클래스에 컨텍스트를 전달하는 방법이라고 생각합니다.