私はこれを解決する方法を混同mはgetSupportLoaderMangerまたはgetLoaderManager私はブロードキャストの発射時にブロードキャストレシーバー内でローダーマネージャーとそのコールバックを使用したいと思いますか?
を取得することができませんM、
public class MyBroadCastReceiver extends BroadcastReceiver implements LoaderManager.LoaderCallbacks<Cursor> {
int cpValue;
private CursorLoader cursorLoader;
private Context mContext;
@Override
public void onReceive(Context context, Intent intent) {
mContext = context;
mContext.getSupportLoaderManager().initLoader(1, null, context);
}
private void doTheTask(MyAsync task, Intent intent) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
// Android 4.4 (API 19) and above
task.execute(intent);
} else {
// Android 3.0 to Android 4.3
task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, intent);
}
}
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
cursorLoader = new CursorLoader(mContext, Uri.parse("content://com.MyApplication.Provider/cte"), null, null, null, null);
return cursorLoader;
}
@Override
public void onLoadFinished(Loader<Cursor> arg0, Cursor cursor) {
if (cursor != null) {
cursor.moveToFirst();
String res = "0";
while (!cursor.isAfterLast()) {
res = cursor.getString(cursor.getColumnIndex("present"));
cursor.moveToNext();
}
cpValue = Integer.valueOf(res);
} else {
cpValue = 0;
}
}
@Override
public void onLoaderReset(Loader<Cursor> arg0) {
}
}
私の質問は、それが活動してフラグメントで正常に動作しているどのように私は、ブロードキャストでloaderManagerを使用することができそうです。
どのようにBroadCast Receiverの内部でLoaderManagerを使用できますか?
[OK]を達成するためのいくつかの方法が間接的な方法を願って、あなたの問題を解決しようとしますが、私はこれをしようとします。 –