Tag: 安卓

Kotlin需要JDK吗?

我没有使用Android很长一段时间,但现在我find了一个新名词Kotlin,所以我的疑问是,jdk是kotlin所必需的吗? 如果kotlin会替换为java,那么jdk就没有必要,因为根据我的jdk是为了在java上开发的,是正确的吗? 如果它是正确的,那么我有其他的疑问(这已经是旧的)为什么jdk被用于android,如果这已经包括一个android sdk? PD我疯了,我需要一个解释。 我在这个新的,我很抱歉我的英文不好,我已经使用谷歌traslate。 我希望你能帮助我,我会感激你的。

如何在Android Studio 3.0中使用Kotlin配置NDK

我与kotlin新手,我已经成功地配置NDK与Android Studio(无kotlin),即在Java中。 但现在谷歌已经介绍了kotlin,所以我想改变我的现有项目kotlin与NDK的支持。 这是我的java代码 static { System.loadLibrary(“native-lib”); } public native String stringFromJNI(int i); 请帮助我如何在kotlin中执行相同的代码

Kotlin这个匿名类

我在这个问题中使用示例代码(View的getWidth()和getHeight()返回0 )。 它有以下代码, view.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { @Override public void onGlobalLayout() { view.getViewTreeObserver().removeOnGlobalLayoutListener(this); view.getHeight(); //height is ready } }); 我就这样写在Kotlin上 image_view.viewTreeObserver.addOnGlobalLayoutListener{ image_view.viewTreeObserver.removeOnGlobalLayoutListener { this } Log.d(“Should be called once”, “Height = ” + image_view.height + “, Width = ” + image_view.width) }; 结果是, 11-22 19:18:33.319 4754-4754/loser.qrcode D/Should be called once: Height = 672, Width = 672 […]

在Kotlin中为variables使用“m”前缀

那么,使用“m”前缀variables名变得通常编程,主要是在Android,但是,因为KOTLIN到达,这个小事让我困扰了一下。 在父类里面没有什么新东西,但是设置和从另一个类获取variables似乎并不舒服,因为在Java中我们创建(和命名)我们的setters和getters,所以我们可以省略“m”,什么不发生在科特林,除非我们走在惯例的相反,并重复Java的技术。 Java的: public class Foo { private String mName; public void setName(String name) { mName = name; } public String getName() { return mName; } } public class Main { public static void main(String[] args) { Foo foo = new Foo(); foo.setName(“Foo”); } } 科特林: fun main(args: Array) { val foo = Foo() foo.mName […]

JaCoCo用Kotlin和Android 3.0返回0%的覆盖率

我试图检查我在Kotlin中编写的测试用例的代码覆盖率。 当我执行./gradlew createDebugCoverageReport –info ,我的coverage.ec文件是空的,我的报告显示我有0%的覆盖率。 请注意,测试用例是100%成功的。 任何人都可以想到任何原因,我的coverage.ec文件不断返回0字节? 我到处搜寻没有运气。 apply plugin: ‘com.android.library’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ apply plugin: ‘jacoco’ android { compileSdkVersion 25 buildToolsVersion “25.0.3” defaultConfig { minSdkVersion 16 targetSdkVersion 25 versionCode 1 versionName “1.0” testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner” } buildTypes { debug { testCoverageEnabled = true } release { minifyEnabled false testCoverageEnabled = true proguardFiles […]

Kotlin检测到服务器请求超时

您好我还是新的kotlin语言,当请求数据到服务器例如在Java中: try{ request_server(); } catch(IOException e){ //Some toast for network timeout for example } 如何检查在Kotlin中是否有网络超时?

科特林向我解释了“背景场”

我一直在看Kotlin官方教程。 我遇到了一个名为Backing Fields的主题 它说, Kotlin的课程不能有字段。 但是,使用自定义访问器时有时需要有后台字段。 为了这些目的,Kotlin提供了一个可以使用字段标识符访问的自动后台字段: var counter = 0 // the initializer value is written directly to the backing field set(value) { if (value >= 0) field = value } 我从这个官方链接得到了上述 我的问题是,是“领域”指向计数器variables? 有人能给我提供一个支持领域的例子,或者用一个理解的词来形容我吗?

Kotlin如何与Java和JavaScript互操作?

Kotlin网站指出: Kotlin与Java 100%互操作。 Kotlin是Java的子集/超集吗? 另外该文档指出,Kotlin与JavaScript兼容,所以如何编译以支持两者? Kotlin是像Xamarin这样的跨平台语言吗? Java插入到Kotlin吗?

从Kotlin扩展Java参数化接口

我有一个接口public interface Parser extends Func1 我从一个kotlin类实现: class ProgramParser : Parser 当我然后尝试写Parser parser = new ProgramParser(); 我得到一个错误Error:(60, 53) error: incompatible types: ProgramParser cannot be converted to Parser 有没有不同的方式让我在Kotlin中实现一个java接口?

Android Studio在第二次构建后显示Kotlin依赖警告

我刚刚在Android项目中启用了Kotlin,我偶然发现了一个警告。 在第二次构建之后(Build – > Rebuild Project),这个警告显示在Messages: Warning:Runtime JAR files in the classpath should have the same version. These files were found in the classpath: ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.2.10/85fe1811f3e586d0cc53aba1394d8089f1862215/kotlin-stdlib-jdk8-1.2.10.jar (version 1.2) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-reflect/1.2.10/19bc012f8c4cd6b705bd6512263777cc19bcf259/kotlin-reflect-1.2.10.jar (version 1.2) /Applications/Android Studio.app/Contents/gradle/m2repository/org/jetbrains/kotlin/kotlin-stdlib-jre7/1.1.51/kotlin-stdlib-jre7-1.1.51.jar (version 1.1) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.2.10/cfe8b616b3bf0811ef70863c86b745a2e767a66e/kotlin-stdlib-jdk7-1.2.10.jar (version 1.2) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.2.10/b9bf650516989595a5390e5a54181e16347208ac/kotlin-stdlib-1.2.10.jar (version 1.2) 看起来第二个版本包含来自缓存的过时的kotlin-stdlib-jre7-1.1.51.jar 。 清洁构建(Build – > Clean Project)后,警告消失,下一个重建项目再次启动。 我正在使用Android Studio 3.0.1,并且明确地将Kotlin依赖包括在版本中: 的build.gradle buildscript { ext { […]