标签: illegalstateexception

facebook,android java.lang.IllegalStateException:无法执行任务:任务已在运行

登录后我可以进行FB查询.几分钟后(玩游戏)Facebook请求失败异常:

java.lang.IllegalStateException: Cannot execute task: the task is already running
Run Code Online (Sandbox Code Playgroud)

我打电话时失败了

        Request.executeMeRequestAsync(Session.getActiveSession(),
                new Request.GraphUserCallback() {...

        Request.executeGraphPathRequestAsync(Session.getActiveSession(),
                "me/apprequests", new Request.Callback() {...

        Request request = new Request(session, "me/apprequests", null,
                    null, new Request.Callback() { .... } );
        RequestAsyncTask status = request.executeAsync();
Run Code Online (Sandbox Code Playgroud)

登录后立即调用相同的调用,它们可以正常工作.我有一个测试应用程序,它的工作原理.但是在登录后几分钟后的真实应用程序中它无效.

android facebook illegalstateexception

9
推荐指数
1
解决办法
7635
查看次数

FragmentManager上的IllegalStateException

我的应用程序会在许多Android平台(4.1,4.0.4,2.3.6 ......)上报告此问题.但我无法在手机上重现此问题.我已经通过Google搜索了这个问题,但堆栈跟踪似乎与我的不一样.

有人知道问题是怎么回事吗?以及如何预防呢?或者我该如何重现此错误?谢谢.

堆栈跟踪:

java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1327)
at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1338)
at android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:595)
at android.support.v4.app.BackStackRecord.commit(BackStackRecord.java:574)
at android.support.v4.app.FragmentTabHost.onAttachedToWindow(FragmentTabHost.java:278)
at android.view.View.dispatchAttachedToWindow(View.java:12064)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2707)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2714)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1339)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1131)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4611)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4898)
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:1008)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:775)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

--------------------编辑--------------------

致乔纳森:

我有两个片段.并且只有一个片段会覆盖onPause回调,代码如下所示.我之后不会覆盖其他回调onPause.我覆盖的另一个回调是onResume回调,代码也如下所示.

分段:

@Override
public …
Run Code Online (Sandbox Code Playgroud)

android fragment illegalstateexception fragment-tab-host

9
推荐指数
1
解决办法
7293
查看次数

BottomSheetBehavior非法状态参数:5

有人可以解释这个异常何时发生?

12-18 11:20:07.225 15944-15944/com.test.dev.debug E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.dev.debug, PID: 15944
java.lang.IllegalArgumentException: Illegal state argument: 5
    at android.support.design.widget.BottomSheetBehavior.startSettlingAnimation(BottomSheetBehavior.java:631)
    at android.support.design.widget.BottomSheetBehavior$1.run(BottomSheetBehavior.java:550)
    at android.os.Handler.handleCallback(Handler.java:751)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:154)
    at android.app.ActivityThread.main(ActivityThread.java:6123)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
Run Code Online (Sandbox Code Playgroud)

Java类

public class BottomSheetController {

    private BottomSheetBehavior<View> bottomSheetBehavior;
    private WeakReference<FrameLayout> bottomSheetContainer;
    private Slide slide;

    public interface Slide {
        void onSlide(@NonNull View bottomSheet, float slideOffset);
    }

    public void bind(FrameLayout bottomSheetContainer) {
        this.bottomSheetContainer = new WeakReference<>(bottomSheetContainer);
        bottomSheetBehavior = BottomSheetBehavior.from(this.bottomSheetContainer.get());
        bottomSheetBehavior.setHideable(true);
        bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
        bottomSheetBehavior.setBottomSheetCallback(sheetCallback());
    }

    public void unbind() …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception bottom-sheet

9
推荐指数
2
解决办法
2400
查看次数

“待处理的组合物尚未应用”例外是什么意思以及如何避免?

我有一个正在运行的应用程序,但有时,由于我不知道的原因,应用程序会崩溃并显示以下消息:

java.lang.IllegalStateException:尚未应用挂起的组合

我无法在任何地方找到有关此异常发生的信息,而且我也不明白如何避免它。

编辑#1:经过一些研究和测试,我发现当我在 BottomNavigation 中的选项卡之间快速切换时会引发此异常(选项卡包含 LazyColumn)

android illegalstateexception android-jetpack-compose

9
推荐指数
2
解决办法
4809
查看次数

什么是触发此异常实例:"java.lang.IllegalArgumentException:观察者为空." 怎么可以避免呢?

ListActivity在使用用户选择的项目内容打开新活动后返回原始文件时,我收到此异常.它只发生在冰淇淋三明治上.

这是跟踪:

 java.lang.IllegalArgumentException: The observer is null.
    at android.database.Observable.unregisterObserver(Observable.java:59)
    at android.widget.BaseAdapter.unregisterDataSetObserver(BaseAdapter.java:42)
    at android.widget.AbsListView.onDetachedFromWindow(AbsListView.java:2373)
    at android.view.View.dispatchDetachedFromWindow(View.java:9756)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2274)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2272)
    at android.view.ViewRootImpl.dispatchDetachedFromWindow(ViewRootImpl.java:2227)
    at android.view.ViewRootImpl.doDie(ViewRootImpl.java:3679)
    at android.view.ViewRootImpl.die(ViewRootImpl.java:3667)
    at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:320)
    at android.view.WindowManagerImpl$CompatModeWrapper.removeViewImmediate(WindowManagerImpl.java:139)
    at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3144)
    at android.app.ActivityThread.access$1200(ActivityThread.java:122)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1179)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:4340)
    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:784)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

堆栈中没有提到我的代码所以它真的令我困惑,我不能做一个脏的捕获事件:/

DataSetObserver只在创建活动时注册匿名.此外,活动嵌入在ActivityGroup中(在4.0中已弃用,但仍应支持它,我希望如此).

新操作系统有没有人遇到过这个问题?

提前致谢.


更新:

好吧,我想我找到了问题的根源,虽然不知道如何解决它.

里面AbsListView.onDetachedFromWindow()我们有这个:

if (mAdapter != …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception android-4.0-ice-cream-sandwich

8
推荐指数
1
解决办法
7842
查看次数

ACRA可以用于图书馆项目吗?

ACRA本身就遇到了一个奇怪的问题:

IllegalStateException: Cannot access ErrorReporter before ACRA#init

我有一个ACRA 4.3.0的应用程序,完美的工作.我将整个应用程序更改为库,因此我可以进行小修改.我创建了一个完全空白的新项目,而不是清单和链接到这个新库.对于尝试此操作的任何其他人,在AcraApplication.java中,您必须删除"resToastText = R.string.crash_toast_text"行并在Acra.init(this)下面添加一个新行;

ACRA.getConfig().setResToastText(R.string.crash_toast_text);

该项目构建良好,在调试中我已经确认ACRA.init(this); 在我的主程序代码之前和错误发生之前运行.在主程序中,我们设置了一些自定义数据:

ACRA.getErrorReporter().putCustomData("Orientation", "L");

它会导致崩溃(或更准确地说,ACRA本身会导致错误)并且不会生成ACRA报告.

任何想法下一步尝试或指示在哪里看?可能是ACRA与库不兼容,如果是这种情况,我可以用不同的方式将它拉出来,但有点挫败了库的目的.


解决方案:Acra.init(this);在init行之前添加以下三行,而不是添加以下行:

ACRAConfiguration config = ACRA.getNewDefaultConfig(this); 
config.setResToastText(R.string.crash_toast_text);
ACRA.setConfig(config);

ACRA.init(this);
Run Code Online (Sandbox Code Playgroud)

请注意,这仅适用于v4.3.0及更高版本.

android init illegalstateexception acra

8
推荐指数
1
解决办法
1746
查看次数

MediaCodec.configure Android时出现IllegalStateException

我尝试为"audio/3gpp"创建编码器,我的应用程序崩溃...

我用这个代码

String mMime = "audio/3gpp";
MediaCodec mMediaCodec = MediaCodec.createEncoderByType(mMime);
MediaFormat mMediaFormat = MediaFormat.createAudioFormat(mMime, RECORDER_SAMPLERATE, 1);
mMediaCodec.configure(mMediaFormat, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE);
mMediaCodec.start();
Run Code Online (Sandbox Code Playgroud)

位于com.agent.mobile.TestAppActivity.initMediaCodec(TestAppActivity.java:234)的android.media.MediaCodec.configure(MediaCodec.java:256) 中的异常
java.lang.IllegalStateException
android.media.MediaCodec.native_configure(Native Method )

android illegalstateexception

8
推荐指数
1
解决办法
8884
查看次数

重启时.replace片段时出现IllegalStateException

FragmentTransaction.replace()用来交换碎片进出.该应用程序第一次启动没有问题.IllegalStateException由于savedInstanceState与提交新的片段事务之间存在冲突,因此在旋转设备时会抛出An .没有涉及AsyncTask.

一个StackOverflow问题建议将setContentView()呼叫置于其中onResumeFragments(),但这似乎没有效果.与...相同onPostResume().

另一个StackOverflow问题说要覆盖onConfigurationChanged().从某种意义上说,这是因为没有重新启动Activity,所以不会发生异常.但是,这可以防止具有不同纵向和横向布局的片段在这些布局之间切换.调用setContentView()onConfigurationChanged() 导致类似的错误(抛出:IllegalArgumentException:二进制XML文件行#25:复制ID为0x12345678,标记为空,或父ID与另一片段)

使用fragmentTransaction.commitAllowingStateLoss()而不是.commit()原因IllegalStateException:Activity已被销毁.

我如何让它工作?

更多异常信息:

了java.lang.RuntimeException:无法启动活动ComponentInfo {MYAPP/myap.MainActivity}:
android.view.InflateException:二进制XML文件行#25:myapp.MainActivity.onResumeFragments(MainActivity.java:450)错误充气类片段
引起by:java.lang.IllegalStateException:无法在myapp.fragments.FragmentChange.onFragmentChange(FragmentChange.java:128)的> android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1533)的onSaveInstanceState之后执行此操作at myapp.MainActivity.onNavigationDrawerItemSelected(MainActivity.java:490)myapp.fragments.NavigationDrawerFragment.selectItem(NavigationDrawerFragment.java:197)at myapp.fragments.NavigationDrawerFragment.onCreate(NavigationDrawerFragment.java:78)at myapp.MainActivity.onResumeFragments( MainActivity.java:450)

旋转设备时代码中的顺序是:

MainActivity.onPause()  
MainActivity.saveInstanceState()  
NavigationDrawerFragment.onSaveInstanceState()  
MainActivity.onStop()
MainActivity.onDestroy()
MainActivity.onCreate()
    super.onCreate(savedInstanceState);
MainActivity.onResumeFragments()
    setContentView()
NavigationDrawerFragment.onCreate()
MainActivity.onNavigationDrawerItemSelected()
     fragmentTransaction.commit();
Run Code Online (Sandbox Code Playgroud)

主要活动:

public class MainActivity extends AppCompatActivity implements
        NavigationDrawerFragment.NavigationDrawerCallbacks {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ...
    }


    @Override
    public void onNavigationDrawerItemSelected(int position) {
        ...
        FragmentChangeEvent fragmentChangeEvent …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception android-fragments

8
推荐指数
1
解决办法
1481
查看次数

java.lang.IllegalStateException:AssetManager已完成

我昨天在我的应用程序工作时去睡觉,今天当我试图运行它时根本无法启动.一旦我尝试打开它就会崩溃java.lang.IllegalStateException.我已经在我的代码中提交了几个提交,只是为了排除这是我最近做过的事情.这没有任何意义,应用程序如何才能停止工作一夜?我在互联网上寻找错误,并没有很多有用的信息.这真的是一个奇怪的错误吗?

这是完整的堆栈跟踪:

E/AndroidRuntime:FATAL EXCEPTION:main java.lang.IllegalStateException:AssetManager已经完成!在android.app.Parcel.readException(Parcel.java:1439)的android.app.Aar开发.事件(Partcel.java:1449),android.app.A活动.ProartA活动(ActivityManagerNative.java:1947). Instrumentation.execStartActivity(Instrumentation.java:1419)位于android.app.Activity.startActivityForResult(Activity.java:3390)的android.app.Activity.startActivity(Activity.java:3583),位于com.android.launcher2.Launcher.startActivity (Launcher.java:2442)com.android.launcher2.Launcher.startActivitySafely(Launcher.java:2469)at com.android.launcher2.AppsCustomizePagedView.onClick(AppsCustomizePagedView.java:584)at android.view.View.performClick( View.java:4240)在android.view.Handler.dispatchMessage(Handler.java)的android.view.View $ PerformClick.run(View.java:17721)android.os.Handler.handleCallback(Handler.java:730) :92)在android.app.Looper.loop(Looper.java:137)的android.app.ActivityThread.main(ActivityThread.java:5136)at java.lang.reflect.Method.invokeNative(Native Method)at j com.android.internal.os.ZygoteInit.main中的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:737)中的ava.lang.reflect.Method.invoke(Method.java:525) ZygoteInit.java:553)at dalvik.system.NativeStart.main(Native Method)

因为就像我说它似乎不是我所做的任何事情我不确定要发布什么代码.但是考虑到应用程序崩溃,这里是应该首先启动的两个主要类的代码:

应用

public class App extends Application {

  private static App instance;
  private static final String TAG = "Starter";

  @Override
  public void onCreate() {
    super.onCreate();

    instance = this;
    // Enable Local Datastore.
    Parse.enableLocalDatastore(this);

    //TODO: Register subclasses
//    ParseObject.registerSubclass(Challenge.class);

    //Parse server
    Log.d(TAG, "Initializing Parse");
    Parse.initialize(new Parse.Configuration.Builder(this)
            .applicationId(getString(R.string.parse_app_id))
            .clientKey(getString(R.string.parse_client_key))
            .server(getString(R.string.server_address)).build()
    );

    //Facebook
    if (AccessToken.getCurrentAccessToken() == null)
      ParseFacebookUtils.initialize(this);

    ParseUser.enableAutomaticUser(); …
Run Code Online (Sandbox Code Playgroud)

java android illegalstateexception

8
推荐指数
1
解决办法
2273
查看次数

应用程序在 Android 10 上崩溃?

我的应用程序在 Play 商店中使用了 2 年,并且运行良好。但突然在过去两周内,用户报告应用程序在使用时崩溃。

所有崩溃都是针对 Android 10 用户的。

结构日志显示错误为,

java.lang.IllegalStateException: Only owner is able to interact with pending media content://media/external/images/media/259525
        at android.os.Parcel.createException(Parcel.java:2079)
        at android.os.Parcel.readException(Parcel.java:2039)
        at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:188)
        at android.database.DatabaseUtils.readExceptionWithFileNotFoundExceptionFromParcel(DatabaseUtils.java:151)
        at android.content.ContentProviderProxy.openTypedAssetFile(ContentProviderNative.java:705)
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1687)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1503)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1420)
        at android.graphics.ImageDecoder$ContentResolverSource.createImageDecoder(ImageDecoder.java:277)
        at android.graphics.ImageDecoder.decodeDrawableImpl(ImageDecoder.java:1743)
        at android.graphics.ImageDecoder.decodeDrawable(ImageDecoder.java:1736)
        at android.widget.ImageView.getDrawableFromUri(ImageView.java:1022)
        at android.widget.ImageView.resolveUri(ImageView.java:991)
        at android.widget.ImageView.setImageURI(ImageView.java:568)
        at androidx.appcompat.widget.AppCompatImageView.setImageURI(AppCompatImageView.java:116)
        at androidx.databinding.adapters.ImageViewBindingAdapter.setImageUri(ImageViewBindingAdapter.java:46)
Run Code Online (Sandbox Code Playgroud)

这个屏幕上发生的事情是,用户应该捕获屏幕截图。我保存此屏幕截图并稍后在ImageView. 我通过它来检索屏幕截图图像URI

当我使用它的URI.

  1. 应用编译SDK版本:28
  2. 应用目标 SDK 版本:28

android illegalstateexception

8
推荐指数
1
解决办法
3853
查看次数