Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/android-studio/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio Android Studio 3.0金丝雀1应该使用什么kotlin版本?_Android Studio_Kotlin_Kotlin Android Extensions - Fatal编程技术网

Android studio Android Studio 3.0金丝雀1应该使用什么kotlin版本?

Android studio Android Studio 3.0金丝雀1应该使用什么kotlin版本?,android-studio,kotlin,kotlin-android-extensions,Android Studio,Kotlin,Kotlin Android Extensions,我有一个中型的Kotlin项目,它使用anko和Kotlin android扩展,特别是来自资源ID的合成属性。他们都停止了我升级到Android Studio 3.0 Canary 1的工作。尽管他们似乎也停止了AS 2.3.2的工作 以下是相关的顶级构建脚本: buildscript { ext.kotlin_version = '1.1.2' repositories { jcenter() } dependencies {

我有一个中型的Kotlin项目,它使用anko和Kotlin android扩展,特别是来自资源ID的合成属性。他们都停止了我升级到Android Studio 3.0 Canary 1的工作。尽管他们似乎也停止了AS 2.3.2的工作

以下是相关的顶级构建脚本:

buildscript {
    ext.kotlin_version = '1.1.2'
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
...
在my app module的构建脚本中,相关部分包括:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

repositories {
  mavenCentral()
  jcenter()
}

android {
    compileSdkVersion 25
    buildToolsVersion '25.0.2'

    dataBinding {
      enabled = true
    }
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    compile 'org.jetbrains.anko:anko-sdk21:0.9.1'
    compile 'org.jetbrains.anko:anko-support-v4:0.9.1'
    compile 'org.jetbrains.anko:anko-appcompat-v7:0.9.1'

    kapt "com.android.databinding:compiler:2.5.0-alpha-preview-02"
}

kapt {
    generateStubs = true
}
我的命令行构建成功;事实上,IDE中的构建成功了。但是Kotlin现在给了我所有合成财产使用的红色标识符

一个可能的线索是Kotlin似乎没有将我的活动(AppCompatActivity)识别为上下文的子类:

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    MultiDex.install(this)
“this”带下划线,表示它需要上下文!并得到了一个主要的活动;我的主要活动定义为:

class MainActivity : AppCompatActivity() {
我的Kotlin IDE插件是1.1.2-4。我不知道如何把它恢复到旧版本


我尝试重新安装Android Studio 2.3.2,但Kotlin插件也不再在那里工作。

您至少需要使用Kotlin
1.1.2-4
。 因此,更改您的
ext.kotlin\u版本

ext.kotlin_version = '1.1.2-4'

您可以从中修改build.gradle(模块:app)文件

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
compile "org.jetbrains.anko:anko-commons:$anko_version"
compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar')
{
    transitive = true;
}
compile "com.squareup.retrofit2:retrofit:$retrofit_version"
compile "com.squareup.retrofit2:converter-gson:$retrofit_version"
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
compile 'com.android.support:design:25.3.1'
}

致:

}


然后红色标识符将消失。

请尝试使用
getApplicationContext()
,而不是使用
this
。MainActivity的类声明是否也有下划线?如果是这样,那么首先修复该错误,然后查看属性上的下划线是否消失。如果MainActivity的类声明出错,那么插件可能无法识别它是从上下文继承的,正如您猜测的那样。
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
implementation "org.jetbrains.anko:anko-commons:$anko_version"
implementation('com.crashlytics.sdk.android:crashlytics:2.6.8@aar')
{
    transitive = true;
}
implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
implementation 'com.android.support:appcompat-v7:25.3.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
implementation 'com.android.support:design:25.3.1'