Fragment から ayntake を取得し、次のように sqlite にアクセスすると、次のエラーが発生します。
原因: android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224) での java.lang.NullPointerException
ここに私のコーディングがあります。「DatabaseUtil dbUtil = new DatabaseUtil(ctx);」を既に宣言しているのに、なぜこのエラーが発生したのかわかりません。
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
.
..
}
public static class ContentFragment extends Fragment {
public ContentFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.list_layout, container, false);
MainActivity myActivity = new MainActivity();
MainActivity.GetDataTask asyncTask = myActivity.new GetDataTask();
return rootView;
}
}
private class GetDataTask extends AsyncTask<Object, Void, Integer> {
protected void onPreExecute() {
}
@Override
protected Integer doInBackground(Object... args) {
DatabaseUtil dbUtil = new DatabaseUtil(ctx);
dbUtil.open();
dbUtil.insertRecord(....);
dbUtil.close();
return 1;
}
@Override
protected void onPostExecute(Integer result) {
super.onPostExecute(result);
}
}