Android не получается запустить браузер внутри onPostExecute

Рейтинг: 0Ответов: 1Опубликовано: 17.10.2014

Все просто, есть у меня фрагмент, в onCreate делаю я пост запрос, потом внутри onPostExecute

я вызываю: Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(this.redirectUrl+"?username="+getValue(loginString)+"&password="+getValue(pwdString))); startActivity(browserIntent);

Ругается на эту строку: startActivity(browserIntent); Вот, что говорит:

10-17 15:47:58.015    6146-6146/com.example.android.navigationdrawerexample E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.IllegalStateException: Fragment PlanetFragment{41b92d38} not attached to Activity
            at android.app.Fragment.startActivity(Fragment.java:1046)
            at android.app.Fragment.startActivity(Fragment.java:1032)
            at com.example.android.navigationdrawerexample.MainActivity$PlanetFragment$JSONAsyncTask.onPostExecute(MainActivity.java:652)
            at com.example.android.navigationdrawerexample.MainActivity$PlanetFragment$JSONAsyncTask.onPostExecute(MainActivity.java:389)
            at android.os.AsyncTask.finish(AsyncTask.java:631)
            at android.os.AsyncTask.access$600(AsyncTask.java:177)
            at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:176)
            at android.app.ActivityThread.main(ActivityThread.java:5319)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
            at dalvik.system.NativeStart.main(Native Method)

Что это омжет быть?

Ответы

▲ 2

Fragment PlanetFragment{41b92d38} not attached to Activity

Это значит, что на тот момент, когда вызывается startActivity(browserIntent); фрагмент уже не прикреплен к Активити. Нужно сделать как-то по-другому. Точне можно сказать только посмотрев на код.