小编RJF*_*res的帖子

Android支持Repo 46.0.0与Android Studio 2.3

当我弹出Android Studio通知时,我今天将我的支持存储库更新到46.0.0.

我去了下面的错误:

错误:任务':app:processDevDebugManifest'的执行失败.

清单合并失败:来自[com.android.support:support-v13:25.3.0] AndroidManifest.xml:27:9-31的属性meta-data#android.support.VERSION@value value =(25.3.0)目前在[com.android.support:preference-v7:26.0.0-alpha1] AndroidManifest.xml:24:9-38 value =(26.0.0-alpha1).建议:在AndroidManifest.xml:25:5-27:34中添加'tools:replace ="android:value"'来覆盖.

我更新了所有依赖项以使用25.3.0版本的修订版26.0.0 Alpha 1,但事实证明我需要将compileSdk从25提升到26.如果你有AS 2.3你不能这样做,你需要得到来自金丝雀的不稳定的alpha/beta版本.

此链接显示更改:https: //developer.android.com/topic/libraries/support-library/revisions.html#26-0-0-alpha1

关于迁移到新的Android O,这是链接:https: //developer.android.com/preview/migration.html

似乎使用AS稳定版本将不适用于新的存储库.

我怎样才能回到Android Studio Repository Version 45而不是新的46?

**更新:合并清单显示生成的库清单中包含的一个

<meta-data
        android:name="android.support.VERSION"
        android:value="26.0.0-alpha1" />
Run Code Online (Sandbox Code Playgroud)

但是因为它是一个生成的文件编辑是没用的,这就是为什么现在我坚持转45,直到新的AS处于稳定版本

android android-support-library android-studio

54
推荐指数
1
解决办法
4万
查看次数

无法使用android.material:1.1.x渲染MaterialButton

每当我使用MaterialButton时,都会在xml预览中得到以下异常:

java.lang.IllegalArgumentException: java.lang.ClassCastException
Run Code Online (Sandbox Code Playgroud)

我已经升级到android studio 3.4和com.google.android.material:material:1.1.0-alpha05

版本1.0.0可以使用,但任何1.1.x都不能。

IDE或库是否有问题?

--

作为参考,完整的堆栈跟踪:

java.lang.ClassCastException@d8dc5d1
    at sun.reflect.GeneratedMethodAccessor893.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at android.animation.PropertyValuesHolder_Delegate.callMethod(PropertyValuesHolder_Delegate.java:108)
    at android.animation.PropertyValuesHolder_Delegate.nCallFloatMethod(PropertyValuesHolder_Delegate.java:143)
    at android.animation.PropertyValuesHolder.nCallFloatMethod(PropertyValuesHolder.java)
    at android.animation.PropertyValuesHolder.access$400(PropertyValuesHolder.java:38)
    at android.animation.PropertyValuesHolder$FloatPropertyValuesHolder.setAnimatedValue(PropertyValuesHolder.java:1387)
    at android.animation.ObjectAnimator.animateValue(ObjectAnimator.java:990)
    at android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1339)
    at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1471)
    at android.animation.ValueAnimator.pulseAnimationFrame(ValueAnimator.java:1490)
    at android.animation.AnimatorSet.pulseFrame(AnimatorSet.java:1163)
    at android.animation.AnimatorSet.handleAnimationEvents(AnimatorSet.java:1146)
    at android.animation.AnimatorSet.doAnimationFrame(AnimatorSet.java:1046)
    at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:146)
    at android.animation.AnimationHandler.access$100(AnimationHandler.java:37)
    at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:54)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:947)
    at android.view.Choreographer.doCallbacks(Choreographer.java:761)
    at android.view.Choreographer_Delegate.doFrame(Choreographer_Delegate.java:66)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.renderAndBuildResult(RenderSessionImpl.java:563)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.render(RenderSessionImpl.java:425)
    at com.android.layoutlib.bridge.BridgeRenderSession.render(BridgeRenderSession.java:120)
    at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:151)
    at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:133)
    at com.android.tools.idea.rendering.RenderTask.lambda$null$8(RenderTask.java:755)
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Run Code Online (Sandbox Code Playgroud)

编辑仅当未设置按钮样式或默认样式时才会发生这种情况:

@ style / Widget.MaterialComponents.Button …

android android-studio material-components-android

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

使用工具栏的自定义字体时崩溃

在我的活动中,我有一个自定义工具栏.我正在尝试更改其标题字体.

以前,我可以通过将字体放在资产文件夹中来做到这一点.使用Android Studio 3,我们现在可以使用fontFamily和FontsContract.我通过以下代码尝试了这种方法:

mToolbar.setTitleTextAppearance(context,R.style.AppTheme_ActionBarText);
Run Code Online (Sandbox Code Playgroud)

和风格

<style name="AppTheme.ActionBarText" parent="@android:style/Widget.ActionBar.TabText">
            <item name="fontFamily">@font/ultra</item>
        </style>
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,几秒钟后(下载自定义字体所需的时间),应用程序崩溃与下面的日志:

java.lang.NullPointerException:尝试从android.support.v4.provider.FontsContractCompat $ 2.onReply(FontsContractCompat.java)上的空对象引用中读取字段'int android.support.v4.provider.FontsContractCompat $ TypefaceResult.mResult'. 277)在android.support.v4.pro4.ider的android.support.v4.provider.FontsContractCompat $ 2.onReply(FontsContractCompat.java:274)android.support.v4.provider.FontsContractCompat $ 3.onReply(FontsContractCompat.java:312) .FontsContractCompat $ 3.onReply(FontsContractCompat.java:300)在android.support.v4.provider.SelfDestructiveThread $ 2 $ 1.run(SelfDestructiveThread.java:149)在android.os.Handler.handleCallback(Handler.java:739)在android .os.Handler.dispatchMessage(Handler.java:95)位于android.app.Looper.loop(Looper.java:158),位于java.lang.reflect的android.app.ActivityThread.main(ActivityThread.java:7225). Com.android.internal.os.Zygot上的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1230)中的Method.invoke(Native Method)eInit.main(ZygoteInit.java:1120)

这是一个错误还是有正确的方法通过xml加载字体?我知道另一种方法是以编程方式加载字体并使用监听器在文本上设置字体.

**编辑:在第二次应用程序运行时,没有发生崩溃(因为已经下载了字体).出于测试目的,我在每次崩溃后都要更改字体以进行调试...

android android-fonts android-studio-3.0

12
推荐指数
1
解决办法
1461
查看次数

如何在翻新中使用JAXB而不是SimpleXml

根据翻新版2.4.0更新:

新增:用于JAXB的Converter替换了现在不推荐使用的Simple XML Framework转换器。

我还没有找到有关如何实现它来代替我的简单的带XML注释的pojos的教程。

谁能分享有关如何从simplexml转换到jaxb的快速指南?

xml android jaxb retrofit2

7
推荐指数
1
解决办法
3067
查看次数

在模块之间共享组件

在我的项目中,我有主应用程序模块,它依赖于我为项目添加的子模块,假设一个用于自定义警报对话框,另一个用于自定义视图等...

如何从主应用程序模块获取子模块中的值的引用?例如,具有布局xml的自定义警报对话框需要采用主应用程序模块中的颜色值.

我试图将主应用程序模块添加为子模块中的依赖项,但由于存在循环依赖性,因此肯定不会起作用.

android module intellij-idea android-studio

6
推荐指数
1
解决办法
4981
查看次数

片段中的领域生命周期

根据 Realm 文档,对于正确的领域生命周期处理,必须在每个 onCreate(in Activities) 和 onStart(Frags) 中打开领域实例,然后在每个活动 (onDestroy()) 和 frags(onStop()) 中关闭领域实例。

在我的片段中,数据处理是从 onCreate() 开始的,它发生在 onStart() 之前。

我决定在我的片段的 onCreate() 中欺骗和实例化 mRealm 实例。我的片段有一个带有 RecyclerView.Adapter 的 recyclerview(不是 RealmBaseAdapter,因为我不知道如何使它适用于 recyclerview)。现在问题来了:

java.lang.IllegalStateException: 这个 Realm 实例已经关闭,无法使用。

在调用适配器中的 getItemCount() 之后,从 Activity1 Fragment1 移动到 Activity2 Fragment2 时会发生这种情况。作为调试,我在调用 getItemCount() 之前使用 logcat 输出 mRealm.isClosed(),这确认该领域不为空且未关闭。然而我仍然知道这个领域已经关闭了!

作为临时解决方案,我禁用了 Fragment1 中的 mRealm.close() ,这似乎解决了解决方案,但这只是一个创可贴。

有什么想法吗?

java realm

5
推荐指数
1
解决办法
1919
查看次数

无法在 Android Studio 3.3 中编译已签名的 APK

更新到 AS 3.3 后,“生成签名包/APK”对话框中似乎存在错误。选择 Bundle 或 APK 格式后,移至下一页并设置模块/密钥库传递后,我无法按下一步移动,因为我收到此弹出窗口:

Please specify a destination folder for the signed apk
Run Code Online (Sandbox Code Playgroud)

没有用于指定目标文件夹的编辑框。还有其他人经历过吗?我想知道是不是因为材质主题插件隐藏了一个额外的编辑框。否则我会提交一个错误。

android android-studio

5
推荐指数
1
解决办法
3572
查看次数

使用 Laravel MIX 将多个 CSS 编译为一个 CSS

我当前的 webpack.mix.js 配置是:

mix.js('resources/js/app.js', 'public/js')
.postCss('resources/css/app.css', 'public/css', [
    require('postcss-import'),
    require('tailwindcss'),
]).extract();
Run Code Online (Sandbox Code Playgroud)

如果我有另一个 CSS,比如说“plugin-1.css”,我如何合并两者以便获得一个 app.css 的输出?

我尝试了 ['resources/css/app.css', 'plugin-1.css'] 但这不是一个选项。

laravel laravel-mix

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