Tag: Java

在Kotlin 1.1.0编译中无法解析符号@ReadOnly和@Mutable

在使用Kotlin 1.1.0进行编译时出现错误“无法解析符号ReadOnly”和“Can not resolve symbole Mutable”。 Kotlin 1.1.0不支持@ReadOnly和@Mutable吗? 以下是一个示例代码。 SampleList.java Kotlin 1.0.7 import org.jetbrains.annotations.Mutable; import org.jetbrains.annotations.ReadOnly; import java.util.ArrayList; import java.util.List; public class SampleList { @ReadOnly // Can resolve symbol ‘ReadOnly’ public static List getReadOnlyList() { return new ArrayList(); } @Mutable // Can resolve symbol ‘Mutable’ public static List getMutableList() { return new ArrayList(); } } […]

Kotlin stdlib和Databinding

是否有可能在xml中使用Kotlin stdlib中的方法? 例如这个代码 产生编译错误 执行任务失败:app:compileDevDebugJavaWithJavac’。 java.lang.RuntimeException:发现数据绑定错误。 **** / data binding error **** msg:无法在类java.lang.String文件中find方法isNotEmpty():D:\ Projects \ PushTracker -Android \ app \ src \ main \ res \ layout \ fragment_appointment_simple_details。 xml loc:104:44 – 104:70 **** \数据绑定错误**** 很明显,数据绑定试图find方法isNotEmpty()在Java的字符串,但我可以强制数据绑定编译器使用kotlin的字符串?

如何在android中创建动态布局

我们正尝试在android(动态布局)中创建一个简单的UI,这个UI将基于一些配置文件(JSON / XML等)。 我们的应用程序应该解析配置文件,并将在运行时创建用户界面。 用户界面配置将包括按钮,他们的正面图像和“文本(显示)”。 任何现有的解决方案都会有帮助

如何通过Okhttp3和Android将文件上传到Amazon S3

我把我的服务器的响应与亚马逊的证书发送一个文件,像这样一个文件,amazon s3url( https://exapmple-bucket.s3-us-west-2.amazonaws.com “)和json(”凭据“variables) : “key”:”somecache${filename}”, “success_action_status”:”201″, “acl”:”public-read”, “policy:”lagrepolicy”, “x-amz-credential”:”somecredential2/s3/aws4_request\”, “x-amz-algorithm”:”some”, “x-amz-date”:”somedate”, “x-amz-signature”:”some” 然后,我必须上传这个数据的文件到amazon s3,我的测试代码在Kotlin(java代码几乎相同): val requestBodyS3 = MultipartBody.Builder() .setType(MultipartBody.FORM) .addFormDataPart(“key”,credentials.getString(“key”)) .addFormDataPart(“success_action_status”, credentials.getString(“success_action_status”)) .addFormDataPart(“acl”,credentials.getString(“acl”)) .addFormDataPart(“policy”,credentials.getString(“policy”)) .addFormDataPart(“x-amz-credential”, credentials.getString(“x-amz-credential”)) .addFormDataPart(“x-amz-algorithm”, credentials.getString(“x-amz-algorithm”)) .addFormDataPart(“x-amz-date”, credentials.getString(“x-amz-date”)) .addFormDataPart(“x-amz-signature”, credentials.getString(“x-amz-signature”)) .addFormDataPart(“file”, “file”, RequestBody.create((MEDIA_TYPE_FILE), file)) .build() // val MEDIA_TYPE_FILE = MediaType.parse(“image/jpeg”) 我用这个代码收到的“文件”(来自图库): intent.setType(“image/*”) startActivityForResult(intent, RC_CODE_PICK) .. onActivityResult: val selectedImage = data?.data val file […]

SparkJava不能与一些Google Youtube API一起使用

我们决定使用SparkJava,Kotlin和Mustache作为商业网络产品。 我们的产品需要与Google(YouTube)API集成。 该项目的所有终端正常工作。 (后台,CRUD操作等),我们开始实施YouTube的集成,我不得不将谷歌图书馆添加到我的项目开始。 (不要添加任何额外的代码,只需添加库google-oauth-client-jetty。) 你可以在下面find我的Gradle库: dependencies { // Below library is a part of the requirements or YouTube Integration compile group: ‘com.google.oauth-client’, name: ‘google-oauth-client-jetty’, version: ‘1.11.0-beta’ // And these are the others compile fileTree(include: [‘*.jar’], dir: ‘lib’) compile “org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version” compile group: ‘com.sparkjava’, name: ‘spark-core’, version: ‘2.7.0’ compile ‘com.google.code.gson:gson:2.8.1’ compile group: ‘commons-codec’, name: ‘commons-codec’, version: […]

如何将Java源文件的一部分转换为Kotlin?

在我的Kotlin项目中,我有一些Java代码要转换成Kotlin。 将Java文件转换为Kotlin的菜单项被禁用,因为它不是我想要转换的整个文件。 如何将Java代码转换为Kotlin?

使用函数引用重写Kotlin中的Java代码会发生SAMtypes冲突

我有一个示例Java代码使用方法引用,我想重写到Kotlin。 Java版本使用方法参考,解决方案简短明了。 但另一方面,我不能在Kotlin中使用方法引用。 我设法编写的唯一版本是下面介绍的一个。 看起来像Function3 { s: String, b: Boolean, i: Int -> combine(s, b, i) }可以用更简洁的方式编写(如果可能的话,方法引用将是完美的)。 我是Kotlin新手,所以我会感激任何线索。 Java的 import io.reactivex.Observable; public class TestJava { Observable strings() { return Observable.just(“test”); } Observable booleans() { return Observable.just(true); } Observable integers() { return Observable.just(1); } void test() { Observable.combineLatest(strings(), booleans(), integers(), this::combine); } double combine(String s, boolean […]

Android客户端和java服务器在同一个git项目中

我正在开发一个简单的Android应用程序,它应该使用REST API与服务器通信。 客户端和服务器都使用kotlin,并使用Jackson和API序列化json,类似于: class xRequest { .. } class xResponse { .. } 客户端和服务器都有自己的git仓库,我使用Android Studio和Idea分别使用它们。 这导致类声明重复,因为他们都需要知道API。 什么是摆脱重复的最好方法? 我可以将API移到第三个项目,然后构建 – 发布 – 添加依赖项,但在开发过程中这是很多工作。 将它们移动到单个项目是否是一个好主意,所以它会看起来如此: my project api android-client server 谢谢

如何注入非静态,按需NativeModules到React Native Android?

在混合应用程序中,多个Activity / Fragment实例嵌套自己的ReactRootView共享一个ReactInstanceManager实例,似乎没有官方的方式为每个Activity / Fragment实例注入本地模块。 就本质而言,本地模块是单独的,就像驻留在.js文件中的javascript模块一样。 如果在同一个Fragment不同实例中运行的JS代码想要访问Java / Kotlin端与Fragment的本地属性进行交互,那么这不是预期的行为。 我尝试使用ReactInstanceManager registerAdditionalPackages()方法,但它失败,像下面的断言错误,如果多个Fragment s / Activity s同时使用。 “Extending native modules with non-matching application contexts.” 这不是线程安全问题,而是registerAdditionalPackages()实现的设计结果。 有没有其他的方法,如果是的话,你如何访问JS端的注入模块?

为什么我们编写NextActivity :: class.java,尽管这是一个kotlin类?

我们必须写这个扩展名为.java的行,虽然它的扩展名是.kt我认为Kotlin文件转换成了java文件,但是java也转换了字节码,所以我们也可以使用.class文件如果Kotlin代码转换成java码。 NextActivity::class.java 到 NextActivity::class.kt //not worked btn?.setOnClickListener { startActivity(Intent(this, NextActivity::class.java)) } 所以问题是为什么我们在NextActivity::class.java编写.java 问题出现在这里 。