Tag: android studio

Kotlin在null上的非null断言

由于Kotlin有非null断言,我发现了一些有趣的东西… val myvar: String = null!! 它会崩溃。 但重点是,它不会在编译时检查。 该应用程序将在运行时崩溃。 不应该抛出编译时错误?

在EditText Kotlin,Android中设置文本

我试图在edittext中设置文本,但它说类型不匹配需要可编辑的发现字符串我的代码如下 String name = "Paramjeet" val nametxt = findViewById (R.id.nametxt) as EditText nametxt.text = name 不要说使用SetText,因为我使用kotlin而不是java

AndroidStudio ExternalSystemException与kotlin 0.12.213

环境 鉴于我有: Kotlin 0.12.213 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.google.android.gms:play-services:7.5.0' compile 'com.android.support:appcompat-v7:22.2.0' compile 'com.android.support:support-v4:22.2.0' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } buildscript { ext.kotlin_version = '0.12.213' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" } } Gradle插件1.2.3 classpath 'com.android.tools.build:gradle:1.2.3' Android Studio AI-141.1972460 问题 当我运行我的android应用程序时,我得到: com.android.ide.common.blame.output.GradleMessage$Kind PluginClassLoader[org.jetbrains.kotlin, 0.12.200.Idea141.8] com.intellij.openapi.externalSystem.model.ExternalSystemException: com.android.ide.common.blame.output.GradleMessage$Kind PluginClassLoader[org.jetbrains.kotlin, 0.12.200.Idea141.8] at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.java:223) at […]

Firebase在Android上与Kotlin无法解析的超类型

我在使用Firebase核心和消息传送v11.4.2的项目中遇到问题。 gradle同步完美工作,但编译时出现这个错误: e:以下类的超类型无法解析。 请确保您在类路径中具有所需的依赖关系: 类com.google.android.gms.internal.zzctr,未解析的超类型:com.google.android.gms.internal.zzee 失败:生成失败,出现异常。 出了什么问题:执行任务':app:compileDebugKotlin'失败。 编译错误。 查看日志了解更多详情 我已经用Kotlin版本1.1.51和1.2.0-beta-88试过; Gradle插件v2.3.3和3.0.0 欢迎任何帮助,非常感谢! 这是我配置项目的方式: 应用程序build.gradle // tried adding and removing the -kapt and -android-extensions. Didn't help. apply plugin: 'com.android.application' apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'io.fabric' debug { /// added this to be sure the class was not being left out […]

运行时JUnit测试中的Kotlin类上的NoClassDefFoundError

我的Kotlin类编译和运行在模拟器上没有问题。 但是,当我测试它,Android Studio说没有找到类。 这里是Kotlin类和使用它的例子: // Product.kt data class Product( val id: Int, val name: String, val manufacturer: String) // MainActivity.java public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Product product = new Product(0, "foo", "bar"); TextView textView = findViewById(R.id.textView); textView.setText(product.getName()); } } 但是当我为Kotlin类写一个JUnit测试时: // ProductTest.java public class ProductTest { […]

无法在android studio中观看Kotlin变量

我无法让android studio在手表窗口中显示计算的值。 我使用Kotlin进行开发,当我尝试给手表添加一个值时,我收到一条消息,内容是“在评估表达式期间发生异常”。 例如 val model = MyModel() val pos = model.position 现在,如果将model.position添加到手表中,则会出现上述错误,并且不显示表达式的值。 我该如何解决这个问题?

SugarORM + Kotlin:Unresovled参考“listAll”

我正在尝试为Android开发组合使用华丽的Kotlin和SugarORM,并将我的模型设置为这样: import com.orm.SugarRecord public class Contact : SugarRecord<Contact>() { var name : String = "" var phoneNumber : String = "" var info : String? = null } 当然我也改变了AndroidManifest.xml : <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" tools:replace="android:icon" android:name="com.orm.SugarApp"> <meta-data android:name="DATABASE" android:value="database.db" /> <meta-data android:name="VERSION" android:value="1" /> <meta-data android:name="QUERY_LOG" android:value="true" /> <meta-data android:name="DOMAIN_PACKAGE_NAME" android:value="/* same as package […]

Kotlin inline关键字导致IntelliJ IDEA覆盖率报告0%

我创建了一个非常简单的测试函数如下 class SimpleClassTest { lateinit var simpleObject: SimpleClass @Mock lateinit var injectedObject: InjectedClass @Before fun setUp() { MockitoAnnotations.initMocks(this) } @Test fun testSimpleFunction() { simpleObject = lookupInstance() } inline fun lookupInstance() = SimpleClass(injectedObject) } 我用Coverage运行它…测试覆盖率是0%。 但是,如果我删除inline关键字,测试范围编号现在显示。 这是一个Kotlin问题或Android IntelliJ IDEA覆盖问题? (注意:JaCoco覆盖率很好)。 注意:我正在使用Android Studio 2.0和Kotlin 1.0.2

Android Studio 3无法建立kotlin片段

我试图使用Android Studio 3.0与我现有的项目Kotlin。 我用kotlin创建了一个片段。 我试图在我的Java活动中使用kotlin片段。 但每次我尝试运行它,我都会得到 Error:(209, 5) error: cannot find symbol class BlankFragment BlankFragment.kt import android.content.Context import android.net.Uri import android.os.Bundle import android.support.v4.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup class BlankFragment : Fragment() { // TODO: Rename and change types of parameters private var mParam1: String? = null private var mParam2: String? = null private […]

如何在Android Studio中附加Kotlin的源代码?

我开始在Android Studio中使用Kotlin,但是我想用与检查Ctr-B或Cmd-B “跳转到声明”相同的方式检查Kotlin源代码,以查看任何标准Java类的源代码。 例如,如果我使用默认的Android Studio Kotlin项目并添加一行调用标准Kotlin listOf() : override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) listOf("hello", "goodbye"); } 并在listOf()上按Ctr-B我只得到以下内容: public fun <T> listOf(vararg elements: T): kotlin.collections.List<T> { /* compiled code */ } 如果我点击Choose Sources我找不到在出现的目录中的源文件。 如何设置Android Studio以查看这些标准Kotlin类的源代码?