我正在尝试录制音频,但是类的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
在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的这种行为感到困惑,有人可以帮助我这是真的还是我做错了什么?如果需要,我可以提供代码.
谢谢.
这是我的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) 我正在开发一个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) 用户单击一个按钮,该按钮会打开一个片段对话框,该对话框会像这样膨胀片段:
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
所以我是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 … 登录后我可以进行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平台(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) 有人可以解释这个异常何时发生?
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) 我有一个正在运行的应用程序,但有时,由于我不知道的原因,应用程序会崩溃并显示以下消息:
java.lang.IllegalStateException:尚未应用挂起的组合
我无法在任何地方找到有关此异常发生的信息,而且我也不明白如何避免它。
编辑#1:经过一些研究和测试,我发现当我在 BottomNavigation 中的选项卡之间快速切换时会引发此异常(选项卡包含 LazyColumn)
android ×9
bottom-sheet ×1
cursor ×1
facebook ×1
file-upload ×1
fragment ×1
google-maps ×1
java ×1
spring ×1
spring-mvc ×1
sqlite ×1
tomcat ×1