标签: illegalstateexception

java.lang.IllegalStateException:指定的子级已经有父级。您必须首先在 jetpack compose 中对子级的父级调用 removeView()

我有一个带有一个 URL 的 Web 视图,每当它在 Web 视图中重定向时,我都会使用具有新标题的新 URL 再次加载相同的可组合项,因为重定向发生得如此之快,它发生在实际可组合项完全组成之前,因此它崩溃了java.lang.IllegalStateException:指定的子级已经有父级。您必须首先对子级的父级调用removeView()。我目前正在使用 ram Costa 的 compose 目标库

navigator.value?.navigate(direction = MenuViewDestination,onlyIfResumed = true)
Run Code Online (Sandbox Code Playgroud)

,我之前也使用过 compose 提供的导航,在这两种情况下我都面临着同样的问题,如果我仅使用恢复 true 进行导航,则页面由于某种原因不会自行导航,并且我无法按原样处理异常发生在内部。这里我附加了菜单可组合项中使用的可组合项来加载 URL,

/* Adding custom accompanist WebView*/
@SuppressLint("SetJavaScriptEnabled")
@Composable
fun LoadMenuWebView(mainViewModel: MainViewModel, webViewModel: MenuWebViewModel, url: String?) {
    Timber.i("LoadWebView from menu $url")
    val context = LocalContext.current
    var extraHeaders: Map<String, String?>?
    webViewModel.menuWebViewState.value = url?.let {
        rememberWebViewState(
            it
        )
    }
    mainViewModel.currentWebViewClient.value = remember {
        getWebViewClient(
            context,
            mainViewModel.backEnabled,
            mainViewModel.progressVisible,
            mainViewModel.cookieManager,
            mainViewModel
        )
    }
    val state by remember { webViewModel.menuWebViewState }
    val …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception android-jetpack-navigation android-jetpack-compose

3
推荐指数
1
解决办法
1557
查看次数

按下Home后应用程序崩溃.无法暂停 - 派生类没有调用super.onSaveInstanceState()

当我按下主页按钮时,应该暂停应用程序,保存所有状态并正常工作.相反,我得到这个错误:

java.lang.RuntimeException:无法暂停活动{be.test.tester/be.test.tester.DataScreen}:java.lang.IllegalStateException:派生类未在android.app.ActivityThread.performPauseActivity中调用super.onSaveInstanceState() (ActivityThread.java:3641)位于android.app.A活动时的android.app.ActivityThread.performPauseActivity(ActivityThread.java:3598),android.app.A活动.事件(ActivityThread.java:3574),android.app.ActivityThread.access $ 2500(ActivityThread.java) :136)在android.app.A.运行时,Android.O.Roper.loop(Looper.java:143)的android.app.Handler.dispatchMessage(Handler.java:99)上的android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2186)在android.app.ActivityThread.main(ActivityThread.java:5068)的java.lang.reflect.Method.invokeNative(Native Method),位于com.android的java.lang.reflect.Method.invoke(Method.java:521) .internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:858)位于dalvik.system.NativeStart.mai的com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)n(原生方法)

引起:java.lang.IllegalStateException:派生类没有在android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1207)的android.view.View.dispatchSaveInstanceState(View.java:6087)中调用super.onSaveInstanceState() android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1207)at android.view.View.saveHierarchyState(View.java:6068)at com.android.internal.policy.impl.PhoneWindow.saveHierarchyState(PhoneWindow.java:1475)在android.app.A活动状态(Activity.java:1056)的android.app.A活动中的android.app.A活动状态(Activity.java:1056)的android.app.A活动状态中的android.app.Activity.onSaveInstanceState(Activity.java:1106). ActivityThread.performPauseActivity(ActivityThread.java:3623)...还有12个

我的活动在触摸时做出反应:

public class DataScreen extends Activity implements OnGestureListener{   
Run Code Online (Sandbox Code Playgroud)

我从意图中获得了一些额外的东西:

totUsage = Integer.parseInt(getIntent().getStringExtra("extraTotUsage"));
    limit = Integer.parseInt(getIntent().getStringExtra("extraLimit"));
    Bundle bundle = getIntent().getExtras();
    mylist = (ArrayList<HashMap<String, String>>) bundle.get("extraMyList");
Run Code Online (Sandbox Code Playgroud)

自定义视图显示数据(画布).在屏幕上滚动时,数据会在自定义视图(set,get方法)中更改并重绘自身.

我真的没有在这里管理onSaveInstanceState,不知道我是否必须这样做.

我的应用程序是堆栈的顶部,因为:

i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Run Code Online (Sandbox Code Playgroud)

我不明白这个错误.

android super illegalstateexception android-homebutton

2
推荐指数
1
解决办法
7154
查看次数

将位图添加到Canvas时出现IllegalStateException

我试图将一个位图图像设置为画布使用 setBitMap,当时我得到了一个IllegalStateException.这个画布当前有一些图像,我试图替换它.任何人都知道为什么会这样?

代码片段

editBm = Bitmap.createBitmap(951, 552, Bitmap.Config.ARGB_8888);    
        Canvas mCanvas=new Canvas(editBm);
        eBit=LoadBMPsdcard(filePath); ---->returns a bitmap when the file path to the file is provided
        Log.i("BM size", editBm.getWidth()+"");
        mCanvas.setBitmap(eBit);
Run Code Online (Sandbox Code Playgroud)

我没有得到任何NullPointer错误,并且该方法 LoadBMPsdcard() 运行良好.

请告诉我你的任何想法......

提前致谢

快乐的编码

android canvas illegalstateexception

2
推荐指数
1
解决办法
3525
查看次数

FragmentTransaction不允许添加到后台堆栈?

为什么我的片段不能被添加到后台?

@Override
    public void onTabSelected(Tab tab, android.app.FragmentTransaction ft) {
        FragmentTransaction transaction = null;


            ListFragment newListFragment = new bListFragment();
            Fragment newFragment = new EntryFrag();
            transaction = getFragmentManager().beginTransaction();
            ft.replace(R.id.frameOne, newListFragment);
            ft.replace(R.id.frameTwo, newFragment);


        ft.addToBackStack(null);
        transaction.commit();
    }
Run Code Online (Sandbox Code Playgroud)

logcat错误

11-22 12:30:41.370: E/AndroidRuntime(13989): FATAL EXCEPTION: main
11-22 12:30:41.370: E/AndroidRuntime(13989): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tyczj.bowling/com.tyczj.bowling.Tabs}: java.lang.IllegalStateException: This FragmentTransaction is not allowed to be added to the back stack.
11-22 12:30:41.370: E/AndroidRuntime(13989):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1751)
11-22 12:30:41.370: E/AndroidRuntime(13989):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767)
11-22 12:30:41.370: E/AndroidRuntime(13989):    at android.app.ActivityThread.access$1500(ActivityThread.java:122)
11-22 12:30:41.370: E/AndroidRuntime(13989): …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception android-fragments

2
推荐指数
1
解决办法
4481
查看次数

SQLite IllegalStateException:我在哪里关闭数据库?

在Android中创建和填充我的新SQLiteDatabase时,我遇到两个相互矛盾的异常.总之我的代码:

SQLiteOpenHelper扩展类:

public void onCreate(SQLiteDatabase db) {
    db.execSQL(DB_TABLE_CREATE);
    loadLevelData(db); //puts data in the database
    //db.close(); <<< ?
}
Run Code Online (Sandbox Code Playgroud)

在我的activity类中,我实例化了这个类(在onCreate()中),并调用getWritableDatabase():

dbHelper = new DbOpenHelper(getApplicationContext());
database = dbHelper.getWritableDatabase();  
Run Code Online (Sandbox Code Playgroud)

现在如果我db.close()在填充数据库之后没有调用,就像上面那样,我得到了

android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the   cursor or database object that was opened here  
Run Code Online (Sandbox Code Playgroud)

但是,如果我关闭它,我会得到以下异常:

java.lang.IllegalStateException: database not open
Run Code Online (Sandbox Code Playgroud)

在getWritableDatabase()上.

这真让我困惑,所以有人可以帮我解决错误吗?

database sqlite android exception illegalstateexception

2
推荐指数
1
解决办法
4774
查看次数

Android java.lang.IllegalStateException:无法初始化游标窗口

我在谷歌播放崩溃报告上有这个错误,不知道如何解决它:

java.lang.IllegalStateException: Couldn't init cursor window
at android.database.CursorWindow.native_init(Native Method)
at android.database.CursorWindow.<init>(CursorWindow.java:41)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:276)
at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:268)
at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:171)
at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:248)
at com.jim2.UpdateService.restaureNotifications(UpdateService.java:274)
at com.jim2.helpers.Globals.updateWidgets(Globals.java:1011)
at com.jim2.helpers.Globals.onReceive(Globals.java:746)
at com.jim2.UpdateService$5.onSignalStrengthsChanged(UpdateService.java:747)
at android.telephony.PhoneStateListener$2.handleMessage(PhoneStateListener.java:387)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3693)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

这是我的代码谁崩溃:

    DataBaseHelper d = new DataBaseHelper(context);
    Cursor c = d.getNotifications(false);
    SharedPreferences preferences;
    String ns = Context.NOTIFICATION_SERVICE;

    NotificationManager mNotificationManager = (NotificationManager)context.getSystemService(ns);

    CharSequence tickerText = "";

    if(c!=null && c.moveToFirst()){ // CRASH HERE :(

        do{
                       .... …
Run Code Online (Sandbox Code Playgroud)

database android cursor illegalstateexception android-sqlite

2
推荐指数
1
解决办法
3222
查看次数

JSF sendRedirect()java.lang.IllegalStateException:已提交

我正在创建一个网页,使用FacesUtils中的getSessionMap()从上一页获取id.如果页面没有获得id,则应将其重定向到其他页面,在本例中为draft.jsf.这是代码:

if ((FacesUtils.getSessionMap().get("id") == null)) {
    try {
        FacesUtils.getResponse().sendRedirect("draft.jsf");
        return;         
    } catch (Exception e) {
        e.printStackTrace();
}
} else {
    id = Long.valueOf(String.valueOf(FacesUtils.getSessionMap().get("id")));
}
Run Code Online (Sandbox Code Playgroud)

但我总是得到java.lang.IllegalStateException:当id为null提交,并且页面未被重定向到draft.jsf.我的代码出了什么问题?任何帮助将非常感激.

这是堆栈跟踪:

java.lang.IllegalStateException: Committed
at org.mortbay.jetty.Response.resetBuffer(Response.java:1023)
at org.mortbay.jetty.Response.sendRedirect(Response.java:428)
at org.jleaf.erp.inv.controller.EditAssemblyController.init(EditAssemblyController.java:58)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:340)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:293)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:393)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1415)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:518)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:455)
at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:331)
at org.jlego.web.jsf.ViewScope.get(ViewScope.java:20)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:327)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
at …
Run Code Online (Sandbox Code Playgroud)

jsf redirect illegalstateexception

2
推荐指数
1
解决办法
9123
查看次数

创建GoogleApiClient对象时出错,给出java.lang.IllegalStateException:已经管理了ID为0的GoogleApiClient

我想在android中实现autocomplete place google API.为此,我需要创建一个GoogleApiClient对象.我已经使用了以下代码...

private GoogleApiClient mGoogleApiClient;

mGoogleApiClient = new GoogleApiClient.Builder(getActivity())
                .addApi(Drive.API)
                .addScope(Drive.SCOPE_FILE)
                .enableAutoManage(getActivity(), 0 /* clientId */, this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .build();
Run Code Online (Sandbox Code Playgroud)

但是当片段启动时,它会抛出以下异常并且应用程序崩溃了.

java.lang.IllegalStateException:已经管理了ID为0的GoogleApiClient

注意:这是在FRAGMENT中执行的.

以下是清单文件配置..

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.example.permission.MAPS_RECEIVE"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        android:name="com.example.bluehorsesoftkol.ekplatevendor.Utils.EkPlateVendorApplication">


        <activity
            android:name="com.example.bluehorsesoftkol.ekplatevendor.activity.registration.ActivitySplashScreen"
            android:label="@string/app_name"
            android:screenOrientation="landscape">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.bluehorsesoftkol.ekplatevendor.activity.registration.ActivityLogin"
            android:screenOrientation="landscape">
        </activity>
        <activity
            android:name=".activity.vendor.ActivityHome"
            android:screenOrientation="landscape">
        </activity>
        <activity         android:name="com.example.bluehorsesoftkol.ekplatevendor.activity.vendor.ActivityAddVendor"
            android:screenOrientation="landscape">
        </activity> …
Run Code Online (Sandbox Code Playgroud)

java google-api illegalstateexception

2
推荐指数
1
解决办法
6037
查看次数

媒体播放器准备显示非法状态例外

我正在尝试从内部存储播放音频文件.我用的代码是......

package com.abhi.firstapp.firstapp;
import android.content.Context;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

import java.io.File;
import java.io.IOException;
import java.net.URI;

public class MainActivity extends AppCompatActivity {

     MediaPlayer mp;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
         setSupportActionBar(toolbar);



    File f= new File("/sdcard/a.mp3");
    if(f.exists())
    {

        Toast toast= Toast.makeText(this, "file exists", Toast.LENGTH_LONG);
        toast.show();
        Log.d("uri","1");
        Uri uri= Uri.fromFile(f);
        Log.d("uri", "2"); …
Run Code Online (Sandbox Code Playgroud)

android media-player illegalstateexception android-mediaplayer

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

IllegalStateException:拖动阴影的尺寸必须为正

https://developer.android.com/reference/android/view/View.DragShadowBuilder#public-constructors

当我使用上面概述的第二个构造函数时-“ View.DragShadowBuilder()构造一个没有关联的View的阴影生成器对象。”

引发以下异常:java.lang.IllegalStateException:拖动阴影尺寸必须为正

第二行代码对我来说是这样的:

public boolean onLongClick(View view) {
    view.startDragAndDrop(null, new View.DragShadowBuilder(), view, 0); 
    return true;
}
Run Code Online (Sandbox Code Playgroud)

它仅在Android 9 Pie上发生。我已经在以前的Android版本上尝试过了,没有问题。我在Android问题追踪器上创建了一个问题,但也许这里有人知道为什么会发生或如何解决。

同时,我正在创建新的View.DragShadowBuilderView(view),其中view是一个透明的ImageView,现在可以停止崩溃,但是我不确定这是否是最佳解决方案。

java android illegalstateexception android-9.0-pie

2
推荐指数
1
解决办法
801
查看次数