В основном я использую AsyncTask показать progressBar
, а после progress
является 10
, он должен работать метод, который находится в MainActivity
. Когда progressBar
равен 10/10
, это приводит к сбою при следующей ошибке.onPostExecute не открывается Намерение
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference
MapProgressTask
@Override
protected void onPostExecute(String result) {
textView.setText(result);
button.setEnabled(true);
progressDialog.hide();
MainActivity mainActivity = new MainActivity();
mainActivity.getGooglePlace();
}
MainActivity
protected void getGooglePlace()
{
PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();
Intent intent;
try {
intent = builder.build(MainActivity.this);
startActivityForResult(intent, place_picker_request);
} catch (GooglePlayServicesRepairableException e) {
e.printStackTrace();
} catch (GooglePlayServicesNotAvailableException e) {
e.printStackTrace();
}
}
Можете ли вы сказать мне, как я могу запустить этот метод, когда progressBar
полна пожалуйста? Благодаря!
MainActivity mainActivity = new MainActivity() ;? Что ты пытаешься сделать? – Vardan95
никогда не пытайтесь создать экземпляр своей деятельности для выполнения метода внутри этого действия. Создайте этот метод внутри публичного разделенного класса .... – Opiatefuchs
** Никогда ** не создавайте экземпляр действия самостоятельно. Итак, во-первых, удалите эти строки: «MainActivity mainActivity = new MainActivity(); mainActivity.getGooglePlace(); '. Затем определите лучший план для запуска этого другого действия (например, 'static', используя' Context' в качестве параметра). Обязательно учитывайте возможность изменения конфигурации во время работы вашей программы AsyncTask (например, пользователь поворачивает экран). – CommonsWare