问题标签 [androidx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - onSaveInstanceState 之后的 Androidx Navigation IllegalStateException
我有一个使用 AndroidX 导航库的应用程序,但我的行为很奇怪。特别是在我的应用程序进入/退出后台时。这里有两个例子:
- 在片段中的一个简单的点击监听器中,我有:
(科特林)
由此,我看到崩溃说它在IllegalStateException
运行之后抛出了一个onSaveInstanceState
。
- 我有一个
ViewModel
关联,Fragment
我将我的观察者注册到片段视图的生命周期。这意味着我会在onStart
. 一些关键事件,例如登录状态决定了应用的导航。就我而言,我有一个启动屏幕,可以转到登录屏幕或主屏幕。用户完成登录后,我会重置导航(将我带回初始屏幕)。现在身份验证状态已准备就绪,我想导航到主片段,这通常会引发错误,因为onResume
必须在FragmentManager
被认为已准备好之前调用。我收到一条错误消息,提示我正在进行交易,无法添加新交易。为了解决这个问题,我不得不编写这段奇怪的代码:
(科特林)
有谁知道我如何让导航控制器在片段生命周期中发挥出色而无需添加这些变通方法?
android - AndroidX Build Fails in Release Mode 关于 appComponentFactory
我正在使用 Android P 并针对 AndroidX 进行编译。在调试/测试版中效果很好,但是当我发布时,我在运行时遇到了一个神秘的崩溃:
2018-06-24 00:21:26.080 11971-11971/? E/LoadedApk:无法实例化 appComponentFactory java.lang.ClassNotFoundException:在路径上找不到类“androidx.core.app.CoreComponentFactory”:DexPathList [[zip 文件“/data/app/app.itsyour.elegantstocks-EuVZWdDgzplhm0Hpa90VwA= =/base.apk"],nativeLibraryDirectories=[/data/app/app.itsyour.elegantstocks-EuVZWdDgzplhm0Hpa90VwA==/lib/x86, /system/lib]] 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:126 ) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:379) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:312) 在 android.app.LoadedApk.createAppFactory(LoadedApk.java:226) 在 android.app .LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:731) 在 android.app.LoadedApk。858) 2018-06-24 00:21:26.145 1667-1854/? E/SurfaceFlinger: ro.sf.lcd_density 必须定义为构建属性 2018-06-24 00:21:26.233 1667-1703/? E/SurfaceFlinger: ro.sf.lcd_density 必须定义为构建属性 2018-06-24 00:21:29.627 1796-1913/? E/TaskPersister:访问最近目录的文件错误(目录不存在?)。2018-06-24 00:21:30.087 11971-11971/? E/AndroidRuntime:致命异常:主进程:app.itsyour.elegantstocks,PID:11971 java.lang.IllegalArgumentException:指定为非空的参数为空:方法 cdbhb,app.itsyour.elegantstocks.aba 中的参数 $receiver(未知来源:2)在 app.itsyour.elegantstocks.feature.navigator.ba$aa(未知来源:24)在 app.itsyour.elegantstocks.feature.navigator.baa(未知来源:13)在 app。20670) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812) 在 android.view.ViewGroup.layout(ViewGroup.java:6194) 在 android. widget.LinearLayout.onLayout(LinearLayout.java:1565) 在 android.view.View.layout(View.java:20670) 在 android.view.ViewGroup.layout(ViewGroup.java:6194) 在 android.widget.FrameLayout.layoutChildren (FrameLayout.java:323) 在 com.android.internal.policy.DecorView.onLayout(DecorView.java:753) 在 android.view.View.layout( View.java:20670) 2018-06-24 00:21:30.087 11971-11971/? E/AndroidRuntime:在 android.view 的 android.view.ViewGroup.layout(ViewGroup.java:6194)。java:6642) 在 java.lang.reflect.Method.invoke(Native Method) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 在 com.android.internal.os.ZygoteInit。主要(ZygoteInit.java:858)2018-06-24 00:21:30.137 1796-1880/?E/InputDispatcher: 频道 '5896582 app.itsyour.elegantstocks/app.itsyour.elegantstocks.feature.navigator.NavigatorActivity (server)' ~ 频道已不可恢复地损坏,将被处置!2018-06-24 00:21:30.253 5198-9377/? E/EntrySyncManager:无法确定帐户名称:删除请求 2018-06-24 00:21:30.253 5198-9377/?E/NowController:无法从 EntryProvider 访问数据。执行异常。java.util.concurrent.ExecutionException:com.google.android.apps.gsa.sidekick.main.hn:无法完成刷新条目的计划请求。FutureTask.run(FutureTask.java:266) at com.google.android.apps.gsa.shared.util.concurrent.bgrun(Unknown Source:4) at com.google.android.apps.gsa.shared.util.concurrent .b.aw.run(SourceFile:4) at com.google.android.apps.gsa.shared.util.concurrent.b.aw.run(SourceFile:4) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor .java:1167) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 在 java.lang.Thread.run(Thread.java:764) 在 com.google.android.apps.gsa。 shared.util.concurrent.birun(SourceFile:6) 原因:com.google.android.apps.gsa.sidekick.main.hn:无法完成刷新条目的计划请求。ClientErrorCode: 3 at com.google.android.apps.gsa.staticplugins.nowstream.baaq.az(未知来源:
我的 gradle 文件。项目等级:
应用分级:
前卫:
java - 迁移到 AndroidX - ResultReceiver 在哪里
在哪个新的 AndroidX 依赖项中ResultReceiver
?
我试过androidx.legacy:legacy-support-v4:1.0.0-alpha1
了,假设它可能是v4
由于它以前的依赖关系android.support.v4.os.ResultReceiver
。
我也试过这些:
我认为必须有一种更聪明的方法来找出新的依赖关系?
来源:迁移到 AndroidX
编辑,搜索开发者 API...
TraceCompat
接收结果
难道新系统里没有?
android - androidx.constraintlayout.widget.constraintlayout 没有可以拖动的链
我在我的布局中使用androidx.constraintlayout.widget.ConstraintLayout并且它不显示链,我也不能拖动任何小部件。我只需键入要使用的约束。
这是 androidx constraintLayout 的示例屏幕截图: androidx.constraintlayout.widget.ConstraintLayout
但是当我尝试切换回:android.support.constraint.ConstraintLayout时,我可以看到它
这是支持约束布局的示例屏幕截图: android.support.constraint.ConstraintLayout
这是一个错误还是什么?
编辑:
我目前的解决方案是从:
到
但这并不能解决我的问题,因为我不想使用支持。
android - 迁移到 AndroidX 后出现数据绑定错误
迁移到 AndroidX(重构 > 迁移到 AndroidX)后,我遇到了很多数据绑定错误。
我正在使用 Android Studio 3.2 Beta 2
我的依赖:
android - SupportMapFragment 不支持 AndroidX Fragment
在这里,IDE 显示androidx.fragment.Fragment无法转换为SupportMapFragment(扩展 android.support.v4.app.Fragment)的错误
我使用的是 15.0.1 版的 play-services-maps 和 1.0.0-beta01 版的 AndroidX 库。
我在发行说明中没有发现 AndroidX 之后 SupportMapFragment 的任何更新:https ://developers.google.com/maps/documentation/android-sdk/releases
编辑:在任何人问之前,form
是一个Form
扩展类的实例AppCompatActivity
(来自 AndroidX)
android - 原因:无法猜测 com.Application
我使用 Android studio 迁移到 AndroidxRefator-> Migrate to Androidx
它导致应用程序无法构建并抛出错误Cause: couldn't make a guess for com.Application.MyClass
MyClass 使用databinding
,问题肯定与databinding
. 我在谷歌问题跟踪器和搜索中发现问题可能是包名,因为我的包名中有一个大写字母。这里的问题是我无法更改包名称,因为它已经在有这么多用户的游戏商店中。有什么解决办法吗?
android - java.lang.NoSuchMethodError:没有静态方法调度未处理的 KeyEvent Pre
迁移到 androidx 时,我在返回时遇到错误。
我认为在 ViewCompat 类中没有dispatchUnhandledKeyEventPre
方法。我正在使用一些第三方依赖项,所以我不知道是哪种方法导致它
kotlin - 没有静态方法 dispatchUnhandledKeyEventPre
每当我按下后退按钮或菜单按钮时,我的应用程序就会崩溃。我正在使用 androidx 和 kotlin。下面是我的日志
07-06 18:47:25.538 22303-22303/com.mnkafe.mnkafe E/InputEventSender:异常调度完成信号。07-06 18:47:25.538 22303-22303/com.mnkafe.mnkafe E/MessageQueue-JNI:MessageQueue 回调中的异常:handleReceiveCallback 07-06 18:47:25.558 22303-22303/com.mnkafe.mnkafe E/MessageQueue- JNI: java.lang.NoSuchMethodError: 类 Landroidx/core/view/ViewCompat 中没有静态方法 dispatchUnhandledKeyEventPre(Landroid/view/View;Landroid/view/KeyEvent;)Z; 或其超类('androidx.core.view.ViewCompat' 的声明出现在 /data/app/com.mnkafe.mnkafe-2/split_lib_dependencies_apk.apk 中)在 androidx.appcompat.app.AppCompatDelegateImpl.dispatchKeyEvent(AppCompatDelegateImpl.java: 1162) 在 androidx.appcompat.app.AppCompatDelegateImpl$AppCompatWindowCallback。372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:947) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:742) 07-06 18:47:25.558 22303-22303/com.mnkafe.mnkafe D/AndroidRuntime: 关闭 VM 07-06 18:47:25.568 22303-22303/com.mnkafe.mnkafe E/AndroidRuntime: FATAL EXCEPTION: main Process: com.mnkafe.mnkafe, PID : 22303 java.lang.NoSuchMethodError: 类 Landroidx/core/view/ViewCompat 中没有静态方法 dispatchUnhandledKeyEventPre(Landroid/view/View;Landroid/view/KeyEvent;)Z; 或其超类('androidx.core.view.ViewCompat' 的声明出现在 /data/app/com.mnkafe.mnkafe-2/split_lib_dependencies_apk.apk 中)在 androidx.appcompat.app.AppCompatDelegateImpl.dispatchKeyEvent(AppCompatDelegateImpl.java: 1162) 在 androidx.appcompat。
android - androidx android.support.v4.app.INotificationSideChannel$Stub
在使用 androidx 和数据绑定添加回收视图并开始显示实时数据后,我正在使用 android jetback
android.support.v4.app.INotificationSideChannel$Stub
。到目前为止,我已经尝试了很多解决方案,但没有任何帮助。为什么当我不使用任何支持库时它会显示此错误,我该怎么做才能解决它?更新:在追溯我的步骤后,我删除了数据绑定并且一切正常,任何人都可以解释这是我的 gradle: