小编0xA*_*iHn的帖子

android studio SDK工具中"ConstraintLayout for android"和"Solver for ConstraintLayout"之间的区别

在用于ConstraintLayout.One的android studio SDK工具中有两个选项ConstraintLayout for android,另一个是Solver for ConstraintLayout.

这是截图: 在此输入图像描述

这两个选项有什么区别?

android android-sdk-tools android-constraintlayout

13
推荐指数
1
解决办法
2194
查看次数

postDelayed()在kotlin中使用了什么

据我所知postDelayed()有两个参数runnable和duration delay.在kotlin下面的代码实际上做了什么:

Handler().postDelayed({
            sendMessage(MSG, params.id)
            taskFinished(params, false)
        }, duration)
Run Code Online (Sandbox Code Playgroud)

这里第一个是两个函数调用,第二个是持续时间延迟.哪里可以运行?这对于kotlin来说是不是像lambda?有人请解释一下吗?

android handler kotlin

12
推荐指数
2
解决办法
9713
查看次数

D8和R8 android之间的区别

随着android studio推出了两款新工具D8和R8.根据谷歌文档D8是一个dex工具,R8是一个progourd工具,但由于他们的解释两​​者都做了几乎相同的事情如下:

D8是一个将java字节代码转换为dex代码的dexer.

R8是一个java程序缩小和缩小工具,它将java字节代码转换为优化的dex代码.

它似乎都将java字节代码逐字转换为dex代码.那么,实际上他们在转换dex代码时是在内部做什么的?

android dex android-d8 android-r8

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

android。*与androidx。*包在Android中的实现和用法之间的区别

Google推出了新的Android扩展库(AndroidX)的早期预览,这基本上是根据其文档对现有android支持库和体系结构软件包进行的新替代。

但是这些androidandroidx包之间的实际区别是什么。这两个软件包的正确用例,以及如何将现有的android软件包转换为androidx软件包。哪些软件包/库支持这些转换?

android androidx

8
推荐指数
1
解决办法
4746
查看次数

显示白色背景象机器人演播室3.3的发射器象(遗产)

在android studio 3.3中,当我尝试使用仅传统选项导入启动器图标的图像时,即使在导入图像后显示白色背景图标,其显示相同并且不使用导入的图标更改图标.

看截图: 在此输入图像描述

android studio 3.3有什么问题?有解决方案吗

android android-launcher android-studio-3.3

8
推荐指数
1
解决办法
1404
查看次数

java.lang.RuntimeException:添加 firebase 远程配置时出现重复类 com.google.protobuf.AbstractMessageLite

当我添加com.google.firebase:firebase-config:19.1.0使用 firebase 远程配置时出现此问题。

  java.lang.RuntimeException: Duplicate class com.google.protobuf.AbstractMessageLite found in modules protobuf-java-2.5.0.jar (com.google.protobuf:protobuf-java:2.5.0) and protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
Run Code Online (Sandbox Code Playgroud)

我已经更新都firebase-analyticsgoogle-play-services到最新版本。但问题仍然存在。但是当我将远程配置更改为旧版本时,18.0.0 or less它工作正常。但我想使用最新版本。我的依赖:

    firebase_analytics       : "com.google.firebase:firebase-analytics:17.2.2",
    fcm                      : "com.google.firebase:firebase-messaging:20.1.0",
    performance              : "com.google.firebase:firebase-perf:19.0.0",
    config                   : "com.google.firebase:firebase-config:19.0.0",
Run Code Online (Sandbox Code Playgroud)

也试图排除下面不起作用:

exclude group: 'com.google.protobuf', module: 'protobuf-lite'
exclude group: 'com.google.protobuf', module: 'protobuf-java'
Run Code Online (Sandbox Code Playgroud)

android kotlin firebase firebase-remote-config

8
推荐指数
2
解决办法
2256
查看次数

Android Studio 3.1中的android.enableD8.desugaring与android.enableD8之间的区别

在Android Studio 3.0中,有一个选项android.enableD8可以启用D8(下一代Dex编译器).在Android Studio 3.1中android.enableD8.desugaring,根据其更新添加了一个新选项.

android.enableD8.desugaring在Android Studio 3.1中实际上做了什么,与android.enableD8选项相比有什么区别?

android dex android-studio android-gradle-plugin android-studio-3.1

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

keytool错误:java.security.UnrecoverableKeyException:无法恢复密钥android

我无法用现有的密钥库签署我的apk.它在签名时给我这个错误: com.android.ide.common.signing.KeytoolException: Failed to read key Cannot recover key

因此,通过以下链接,我尝试更改密码,但keytool error: java.security.UnrecoverableKeyException: Cannot recover key在执行此命令时给出了错误:

keytool -keypasswd -alias %MyKeyAlias% -new %newpassword% -keystore KeyStore.jks

我已经在playstore中使用此密钥库提供了一个版本.

android android-keystore signed-apk

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

AAPT2在android studio 3.1中异常工作,包括True和False标志

android.enableAapt2 = false在我的gradle.properties文件中使用.将android studio更新为3.1后,我的项目显示警告,更新或删除AAPT2标志,如下所示:

The option 'android.enableAapt2' is deprecated and should not be used anymore.
Use 'android.enableAapt2=true' to remove this warning.
It will be removed at the end of 2018.
Run Code Online (Sandbox Code Playgroud)

正如他们所建议的,在将标志更改为true显示错误之后:

AAPT2 error: check logs for details

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':App:processDebugResources'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
    at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at …
Run Code Online (Sandbox Code Playgroud)

android android-studio-3.1 aapt2

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

kotlin 中 lazy{} 与 getter() 初始化之间的区别

在 kotlin 中,我们可以同时使用这两种方法lazy{}getter()

延迟初始化:

internal val connector by lazy {
        serviceConnector
    }
Run Code Online (Sandbox Code Playgroud)

吸气剂():

internal val connector : ServiceConnector
        get() = serviceConnector
Run Code Online (Sandbox Code Playgroud)

何时使用哪种方法以及这两种方法在幕后实际做了什么。哪一种是最好的方法?

android getter-setter lazy-initialization kotlin

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

ART中AOT和JIT编译器之间的区别

在棉花糖中,添加了ART的AOT编译器。从Android N起,除了AOT外,还添加了另一个编译器JIT。

什么是AOT编译器特定的作业/功能,什么是JIT编译器的作业/功能?

android jit android-6.0-marshmallow android-7.0-nougat

5
推荐指数
2
解决办法
3134
查看次数

将 java 文件转换为在 Android studio 3.3 中禁用的 kotlin 文件

更新 android studio 3.3 canary 7 后convert java file to kotlin file is showing disable

Android Studio Menu -> Code -> Convert Java File to Kotlin File
Run Code Online (Sandbox Code Playgroud)

它的显示禁用。为什么它被禁用以及如何启用它 android studio 最新版本。

android kotlin android-studio android-studio-3.3

5
推荐指数
2
解决办法
2375
查看次数

如何在android中使用adb命令打开/关闭调试模式

我不知道是否可以使用adb命令打开/关闭android调试模式.

是否有任何adb命令可以打开/关闭android调试模式.如果有任何建议或任何方式,请高度赞赏.

android adb debug-mode

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