然后在API级别为23的真实设备上调试它:
问题是当我尝试通过Android OS自己的类进行调试时,我得到'源代码与字节码不匹配'.为什么会这样?应用程序运行的测试设备是API级别23,正在调试的源文件也是级别23.

我真的很困惑.任何人都可以解释为什么我看到这个消息以及我如何解决它?
java android android-debug android-studio android-6.0.1-marshmallow
介绍:
随着Android 6.0.1的新版本,似乎Android对Spinner组件进行了一些更改,因为默认情况下,胡萝卜周围的内部填充更大一些.
我在一个应用程序中注意到了这一点,我没有修改代码中的任何内容,只是更新了设备上的操作系统,但是微调器的大小不同.
情况:
我有两个旋转器,一个在另一个旁边RelativeLayout(介意其余组件,我添加了所有内容,所以你可以看到这部分布局 - 删除了完全不必要的属性或视图ID)
<RelativeLayout
android:id="@+id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/container_for_buttons_on_the_right"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true">
<!-- Buttons here-->
</LinearLayout>
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spinner_1"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<ViewSwitcher
android:id="@+id/spinner_switch"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_toEndOf="@id/spinner_1"
android:layout_toLeftOf="@id/container_for_buttons_on_the_right"
android:layout_toRightOf="@id/spinner_1"
android:layout_toStartOf="@id/container_for_buttons_on_the_right"
android:inAnimation="@anim/fade_in"
android:outAnimation="@anim/fade_out">
<android.support.v7.widget.AppCompatSpinner
android:layout_width="wrap_content"
android:layout_height="match_parent" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- ImageView properties are incomplete but I need it there.-->
</ViewSwitcher>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
Spinner适配器用于该getView()方法的布局如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="48dp"
android:orientation="horizontal"
android:paddingLeft="8dp"
android:paddingRight="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:ellipsize="end"
android:gravity="center_vertical"
android:singleLine="true"
tools:text="Test" …Run Code Online (Sandbox Code Playgroud) android android-layout android-spinner android-6.0-marshmallow android-6.0.1-marshmallow
我的项目一直在运行,直到我将S6 Edge更新为Android 6.0.1.
第二次启动后,应用程序崩溃并出现OutOfMemory错误.
该应用程序在目录中包含2000多个图像,我使用计时器递增计数器并在imageView上显示它们.当onFinish()/ onPause()/ onDestroy()被调用时,我通过将它们设置为null来销毁/取消所有对象,例如定时器,计数器和imageView.
这就是我如何获取/打印图像到imageView
int resID = getResources().getIdentifier("animation"+i , "drawable", getPackageName());
Drawable animationFrame = ContextCompat.getDrawable(this, resID);
animationView.setImageDrawable(animationFrame);
i++;
Run Code Online (Sandbox Code Playgroud)
它在初始启动时运行(即使我使用生成的APK安装应用程序).当我从最小化的应用程序中删除应用程序时,应用程序在2-3秒后崩溃.我已经检查了分配的内存,并且在第一次运行时是正常的(最多12MB),而在第二次运行时分配的内存是255MB.
onDestroy()方法 这包括我初始化的所有变量.我的变量初始化为私有或没有访问变量.
@Override
protected void onDestroy() {
super.onDestroy();
pauseAnimation();
animationView.setImageDrawable(null);
animationView = null;
justAnimation = null;
buttonSign = null;
i = 0;
media.stop();
media = null;
deathRateEU = 0;
deathRateUK = 0;
labelNumber = null;
labelNumberUK = null;
buttonSign = null;
loadingEU = null;
loadingUK = null;
}
Run Code Online (Sandbox Code Playgroud)
Media是MediaPlayer,初始化为public,当计数器(i)到达某个点时播放声音
我在另一个运行Android 5.1.3的设备上安装了这个(不确定,但它是5.1的东西).
在Android 6.0.1上最小化应用程序时,OutOfMemory问题是否存在已知错误? …
android out-of-memory android-6.0-marshmallow android-6.0.1-marshmallow
仅在使用Android 6.0.1的三星手机上才会发生此错误。或7.0:
Fatal Exception: java.lang.NullPointerException
Attempt to invoke virtual method 'void android.widget.Editor$SelectionModifierCursorController.hide()' on a null object reference
android.widget.Editor.performLongClick (Editor.java:1139)
android.widget.TextView.performLongClick (TextView.java:10945)
android.view.View$CheckForLongPress.run (View.java:22568)
android.os.Handler.handleCallback (Handler.java:739)
android.os.Handler.dispatchMessage (Handler.java:95)
android.os.Looper.loop (Looper.java:148)
android.app.ActivityThread.main (ActivityThread.java:7325)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)Run Code Online (Sandbox Code Playgroud)
寻找一种预防方法。=)
看来这是一个已知问题,但是优先级较低:
android samsung-mobile android-6.0.1-marshmallow android-7.0-nougat
使用它 library来实现Ripple Effect它除了在Android M设备上工作正常.
在Android M设备上获得的信息IllegalStateException表明恢复中的下溢 - 恢复比恢复更多
FATAL EXCEPTION: main
Process: com.example.ripplethings, PID: 20119
java.lang.IllegalStateException: Underflow in restore - more restores than saves
at android.graphics.Canvas.native_restore(Native Method)
at android.graphics.Canvas.restore(Canvas.java:540)
at com.andexert.library.RippleView.draw(RippleView.java:166)
Run Code Online (Sandbox Code Playgroud) android ripple android-6.0-marshmallow android-6.0.1-marshmallow
我收到错误'E/Surface:getSlotFromBufferLocked:unknown buffer:0xab7cffe0'.通过研究,我了解到它在android 6.0中已知问题.如何将android模拟器从6.0更新到6.0.1?在SDK管理器中,我可以看到安装了Android 7.0和Android 6.0,但6.0.1不存在.
我该如何更新6.0到6.0.1?
同样在AVD管理器中,我看不到6.0以外的任何系统映像.我也安装了其他版本,那么如何为我的AVD选择那些版本的android?

每次我运行我的应用程序时,我都会收到错误 emulator: WARNING: UpdateCheck: failed to get a URL: 35 (Error)
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '24.4.1'
android android-sdk-tools android-studio android-6.0-marshmallow android-6.0.1-marshmallow
我有ImageView与app:srcCompat="@drawable/my_app_img"
我得到:
android.content.res.Resources$NotFoundException File res/drawable/$my_app_img__0.xml 来自颜色状态列表资源 ID #0x7f07000a
在 Android 6 上,不要在 8 及更高版本上使用它。
这是my_app_img.xml:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
xmlns:tools="http://schemas.android.com/tools"
android:width="73dp"
android:height="103dp"
android:viewportWidth="73"
android:viewportHeight="103">
<path
android:fillAlpha="0"
android:fillColor="#000000"
android:pathData="M0,0l72.299,0l0,103l-72.299,0z" />
<path android:pathData="M70.379,96.761L40.602,56.464L25.724,77.276C22.268,82.111 22.324,88.62 25.864,93.394L28.417,96.839C31.291,100.714 35.832,103 40.659,103H67.227C70.442,103 72.288,99.345 70.379,96.761Z">
<aapt:attr name="android:fillColor">
<gradient
android:endColor="#FF094EC2"
android:endX="31.7222"
android:endY="68.3161"
android:startColor="#FF005AF4"
android:startX="57.4428"
android:startY="104.487"
android:type="linear"
tools:targetApi="n" />
</aapt:attr>
</path>
<path android:pathData="M68.592,0H38.75C36.254,0 33.907,1.188 32.431,3.199L2.949,43.369C-0.919,48.64 -0.988,55.79 2.778,61.134L19.001,84.156C19.001,80.833 20.044,77.594 21.984,74.895L71.598,5.853C73.355,3.407 71.606,0 68.592,0Z">
<aapt:attr name="android:fillColor">
<gradient
android:endColor="#FF29EEFD"
android:endX="32.6558"
android:endY="31.6712"
android:startColor="#FF2EB3ED"
android:startX="6.53102"
android:startY="64.8591"
android:type="linear" />
</aapt:attr>
</path>
</vector>
Run Code Online (Sandbox Code Playgroud)
我也使用: …
android android-support-library android-6.0.1-marshmallow android-vectordrawable
我在崩溃日志中看到此错误,该错误仅来自Android 6.0.1设备,而不是特定于设备的。
Fatal Exception: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:849)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:337)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
at android.widget.PopupWindow.invokePopup(PopupWindow.java:1329)
at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1077)
at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1035)
at com.android.internal.widget.FloatingToolbar$FloatingToolbarPopup.show(FloatingToolbar.java:563)
at com.android.internal.widget.FloatingToolbar.show(FloatingToolbar.java:214)
at com.android.internal.view.FloatingActionMode$FloatingToolbarVisibilityHelper.updateToolbarVisibility(FloatingActionMode.java:411)
at com.android.internal.view.FloatingActionMode$1.run(FloatingActionMode.java:65)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7229)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Run Code Online (Sandbox Code Playgroud)
有谁知道这个问题的原因/解决方案?它似乎很少出现。
我到处搜索但没有得到任何帮助.我想使用背景图像作为全屏幕,它将覆盖status bar和footer navigation具有back buttonwith home button和a的task switcher button.
如下图所示:
android android-layout android-6.0-marshmallow android-6.0.1-marshmallow
MediaMetadataRetriever我尝试与 Kotlin 一起使用use:
MediaMetadataRetriever().apply {
setDataSource(context, uri)
}.use {
...
}
Run Code Online (Sandbox Code Playgroud)
但它在 Android 6 Marshmallow (23 API) 上给了我一个错误:
java.lang.ClassCastException:android.media.MediaMetadataRetriever 无法转换为 java.lang.AutoCloseable
为什么这样?
android kotlin android-6.0-marshmallow android-6.0.1-marshmallow