标签: illegalstateexception

为什么MediaRecorder的start()方法抛出IllegalStateException?

我正在尝试录制音频,但是类的start()方法会MediaRecorder抛出一个IllegalStateException.我使用以下代码:

MediaRecorder recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile("/sdcard/");
try {
    recorder.prepare();
} catch (IllegalStateException e) {

// TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Log.i("Try","Exception");
recorder.start(); 
Run Code Online (Sandbox Code Playgroud)

并获得许可

<uses-permission android:name="android.permission.RECORD_AUDIO" />
Run Code Online (Sandbox Code Playgroud)

android user-permissions illegalstateexception mediarecorder

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

Android - SQLite Cursor getColumnIndex()区分大小写?

在Android中使用SQLiteCursor时,我发现getColumnIndex()的行为区分大小写,例如:

例:

Column Name in DB was: Rules
cursor.getColumnIndex("Rules")  //workes fine
cursor.getColumnIndex("rules")  //throws error, see the error detail
Run Code Online (Sandbox Code Playgroud)

文档没有说明这一点,详情 请看这个.

LogCat说:

java.lang.IllegalStateException:无法从CursorWindow读取第0行col -1.在从中访问数据之前,请确保正确初始化Cursor

我对SQLiteCursor的这种行为感到困惑,有人可以帮助我这是真的还是我做错了什么?如果需要,我可以提供代码.

谢谢.

sqlite android cursor illegalstateexception

10
推荐指数
1
解决办法
7995
查看次数

onSaveInstanceState(onClick首选项)后无法执行此操作

这是我的PreferenceActivity(我主要活动的内部课程)

public static class TestSettings extends PreferenceActivity implements Preference.OnPreferenceClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.pref);
        getPreferenceManager().findPreference("key").setOnPreferenceClickListener(this);

    }
Run Code Online (Sandbox Code Playgroud)

这是我的onPreferenceClick:

@Override
public boolean onPreferenceClick(Preference preference) {
    FragmentClass fc = new FragmentClass();
    fc.show(fm, "TAG");
    return false;
}
Run Code Online (Sandbox Code Playgroud)

这是我的FragmentClass(TimePicker对话框):

public class FragmentClass extends DialogFragment implements TimePickerDialog.OnTimeSetListener {

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        return new TimePickerDialog(getActivity(), this, 15, 00, false);
    }


    @Override
    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        Log.i("APP", "hour: "+hourOfDay+", …
Run Code Online (Sandbox Code Playgroud)

java android illegalstateexception

10
推荐指数
1
解决办法
4867
查看次数

IllegalStateException:填充后视图大小太小

我正在开发一个Android应用程序.在这个应用程序中,我在片段中显示MapView.如果我的设备旋转,我尝试使用以下方法之一移动相机:

mapa.animateCamera(cameraUpdate);

要么

mapa.moveCamera(cameraUpdate);

然后我的应用程序崩溃并显示以下错误:

java.lang.IllegalStateException: View size is too small after padding
 at com.google.a.a.ab.b(Unknown Source)
 at com.google.maps.api.android.lib6.gmm6.c.a.a(Unknown Source)
 at com.google.maps.api.android.lib6.gmm6.c.a.a(Unknown Source)
 at com.google.maps.api.android.lib6.d.dw.a(Unknown Source)
 at com.google.maps.api.android.lib6.gmm6.c.a.a(Unknown Source)
 at com.google.maps.api.android.lib6.d.et.a(Unknown Source)
 at com.google.android.gms.maps.internal.j.onTransact(SourceFile:83)
 at android.os.Binder.transact(Binder.java:380)
 at com.google.android.gms.maps.internal.IGoogleMapDelegate$zza$zza.moveCamera(Unknown Source)
 at com.google.android.gms.maps.GoogleMap.moveCamera(Unknown Source)
 at com.accionplus.dbdplus.utils.MapUtils.centrarCamara(MapUtils.java:88)
 at com.accionplus.dbdplus.utils.MapUtils.centrarCamara(MapUtils.java:52)
 at com.accionplus.dbdplus.controladores.pdv.RutaProgramadaFragment$4.onMyLocationButtonClick(RutaProgramadaFragment.java:274)
 at com.google.android.gms.maps.GoogleMap$3.onMyLocationButtonClick(Unknown Source)
 at com.google.android.gms.maps.internal.zzo$zza.onTransact(Unknown Source)
 at android.os.Binder.transact(Binder.java:380)
 at com.google.android.gms.maps.internal.be.a(SourceFile:81)
 at com.google.maps.api.android.lib6.d.ak.onClick(Unknown Source)
 at android.view.View.performClick(View.java:5156)
 at android.view.View$PerformClick.run(View.java:20755)
 at android.os.Handler.handleCallback(Handler.java:739)
 at android.os.Handler.dispatchMessage(Handler.java:95)
 at android.os.Looper.loop(Looper.java:145)
 at android.app.ActivityThread.main(ActivityThread.java:5832)
 at java.lang.reflect.Method.invoke(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:372)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
 at …
Run Code Online (Sandbox Code Playgroud)

android google-maps illegalstateexception

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

片段对话框中膨胀的片段引发错误"片段未创建视图"

用户单击一个按钮,该按钮会打开一个片段对话框,该对话框会像这样膨胀片段:

AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());

        View view = getActivity().getLayoutInflater().inflate(
                R.layout.monday_fragment, null);
        builder.setView(view).setTitle("Homework Due Monday")
                .setNegativeButton("Dismiss", null);

        AlertDialog dialog = builder.create();
        dialog.show();
Run Code Online (Sandbox Code Playgroud)

这是指定布局的xml(monday_fragment.xml),其中对要膨胀的片段的引用位于:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    >

    <fragment
        android:id="@+id/monday_fragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:name="com.bernard.beaconportal.activities.schedule.daydialogfragments.MondayFragment"
        android:layout_centerHorizontal="true"/>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

片段对话框中的片段然后在其OnCreateView中膨胀自己的布局:

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        swipe = inflater.inflate(R.layout.day_homework_fragment, container,
                false);

        lView = (ListView) swipe.findViewById(R.id.listView1);

        progress = (ProgressBar) swipe.findViewById(R.id.progress);

        lView.setVisibility(View.GONE);

        return swipe;

    }
Run Code Online (Sandbox Code Playgroud)

以下是片段中膨胀的"day_homework_fragment.xml"布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:layout_gravity="center"
    android:background="@color/light_background"> …
Run Code Online (Sandbox Code Playgroud)

android illegalstateexception android-fragments inflate-exception

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

Spring MVC文件上传 - 由于未提供多部件配置,因此无法处理部件

所以我是Spring的新手,我正在努力让文件上传为我的项目工作(我正在使用Spring Tool Suite btw.)并且当我提交表单时,我得到的是:

HTTP状态500 - 无法解析多部分servlet请求; 嵌套异常是java.lang.IllegalStateException:由于未提供多部件配置,因此无法处理部件

浏览器的堆栈跟踪:

type Exception report

message Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: Unable to process parts as no multi-part configuration has been provided

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: Unable to process parts as no multi-part configuration has been provided
    org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.parseRequest(StandardMultipartHttpServletRequest.java:100)
    org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.(StandardMultipartHttpServletRequest.java:78)
    org.springframework.web.multipart.support.StandardServletMultipartResolver.resolveMultipart(StandardServletMultipartResolver.java:75)
    org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:108)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:106)
root cause

java.lang.IllegalStateException: Unable …

spring tomcat file-upload spring-mvc illegalstateexception

10
推荐指数
4
解决办法
3万
查看次数

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
查看次数