Android Studio:
不要将Android上下文类放在静态字段中;这是内存泄漏(并且还会中断即时运行)
所以有两个问题:
#1您如何startService
从没有静态变量的静态方法中调用a ?
#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
?
注意:我认为我的主要问题可能是如何将上下文传递给调用方法所在的类。