草庐IT

Android 无法查找支持版本 27.0.0 的窗口

coder 2023-11-19 原文

supportVersion 更新为 27.0.0 后,仅在 Android 5.0.2 上应用崩溃并显示此堆栈跟踪:

W/WindowManager: Failed looking up window
            java.lang.IllegalArgumentException: Requested window android.view.ViewRootImpl$W@f004691 does not exist
            at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:8426)
            at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:8417)
            at com.android.server.wm.WindowManagerService.removeWindow(WindowManagerService.java:2558)
            at com.android.server.wm.Session.remove(Session.java:186)
            at android.view.ViewRootImpl.dispatchDetachedFromWindow(ViewRootImpl.java:2920)
            at android.view.ViewRootImpl.doDie(ViewRootImpl.java:5390)
            at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:3223)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:135)
            at android.os.HandlerThread.run(HandlerThread.java:61)
            at com.android.server.ServiceThread.run(ServiceThread.java:46)

在设备和模拟器上。

如果我将 26.0.2 作为 supportVersion,应用程序仍然可以正常运行。

更新

问题仍然存在于 supportVersion 27.0.1

更新 2

项目等级

buildscript {
    ext.kotlin_version = '1.1.51'
    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.android.tools.build:gradle:3.0.0'
        classpath 'com.google.gms:google-services:3.0.0'
        classpath 'io.fabric.tools:gradle:1.24.2'
    }
}

plugins {
    id "com.diffplug.gradle.spotless" version "3.6.0"
}

allprojects {
    repositories {
        google()
        jcenter()
        jcenter { url = 'http://dl.bintray.com/swrve-inc/android' }
        maven { url 'https://maven.fabric.io/public' }
        maven { url 'http://maven.localytics.com/public' }
        maven { url 'http://dl.bintray.com/teads/TeadsSDK-android' }
        maven { url 'http://maven.apptimize.com/artifactory/repo' }
        maven { url 'https://comscore.bintray.com/Analytics' }
    }
}

ext {
    //APPLICATION
    compileSdkVersion = 27
    buildToolsVersion = '27.0.1'
    minSdkVersion = 19
    targetSdkVersion = 27

    //LIBRARIES
    timberVersion = '4.6.0'
    guavaVersion = '20.0'
    multidexVersion = '1.0.2'
    supportVersion = '27.0.1'
    constraintVersion = '1.0.2'
    playServiceVersion = '11.4.0'
    commonLangVersion = '3.5'
    jacksonVersion = '2.4.2'
    appsFlyerVersion = '4.7.1'
    facebookAudienceVersion = '4.26.1'
    facebookSkdVersion = '4.26.0'
    facebookAdapterVersion = '4.26.1.0'
    flurryVersion = '6.9.2'
    googleTrackingVersion = '2.2.4'
    crashliticsVersion = '2.6.8'
    swrveVersion = '4.10.1'
    swrveLocationVersion = '1.3'
    pubnativeVersion = '2.0.5'
    localyticsVersion = '4.3.1'
    teadsVersion = '2.4.13'
    oguryPresageVersion = '2.1.21'
    evernoteAndroidJobVersion = '1.1.11'
    apptimizeVersion = '2.13.5'
    comScoreVersion = '5.5.1'
    bottomBarVersion = '2.3.1'
    rxJavaVersion = '2.1.6'
    rxAndroidVersion = '2.0.1'

    //TEST LIBRARIES
    testsVersion = '1.0.1'
    espressoVersion = '3.0.1'
    junitVersion = '4.12'
    mockitoVersion = '1.10.19'
    powermockVersion = '1.6.6'
    robolectricVersion = '3.5'
    assertjVersion = '1.2.0'

    //PUBNATIVE ADAPTERS
    pnFlurryVersion = '6.9.2'
    pnAdmobVersion = '9.6.1'

}

应用程序等级

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'io.fabric'
apply plugin: 'com.diffplug.gradle.spotless'

spotless {
    kotlin {
        target "**/*.kt"
        ktlint()
    }
}

def versionMajor = 8
def versionMinor = 8
def versionPatch = 8
def versionBuild = 8 

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    flavorDimensions "std"

    defaultConfig {
        dimension "std"

        applicationId "xxx.yyy.zzz"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion

        versionCode versionMajor * 1000 + versionMinor * 100 + versionPatch * 10 + versionBuild
        versionName "${versionMajor}.${versionMinor}.${versionPatch}"

        //APP VERSION NAME
        buildConfigField "String", "VERSION_NAME_PREFIX", "\"zzzz\""

        //MARKET CONFIG
        buildConfigField "String", "MARKET_NAME", "\"GooglePlay\""
        buildConfigField "String", "MARKET_ENDPOINT", "\"market://details?id=\""
        buildConfigField "String", "MARKET_BACKOFF_ENDPOINT", "\"https://play.google.com/store/apps/details?id=\""

        multiDexEnabled true

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    signingConfigs {
        ....
    }

    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }

    buildTypes {
        debug {
            // Disable fabric build ID generation for debug builds
            ext.enableCrashlytics = false
        }
        release {
            minifyEnabled true
            proguardFiles 'acb.txt'
            zipAlignEnabled true
        }
    }
    lintOptions {
        disable 'MissingTranslation'
        checkReleaseBuilds true
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
        fatal 'StopShip'

    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {

    //CORE LIB
    implementation "com.jakewharton.timber:timber:${rootProject.ext.timberVersion}"
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
    implementation "com.google.guava:guava:${rootProject.ext.guavaVersion}"
    implementation "com.android.support:multidex:${rootProject.ext.multidexVersion}"
    implementation "com.android.support:multidex-instrumentation:${rootProject.ext.multidexVersion}"
    implementation "com.android.support:design:${rootProject.ext.supportVersion}"
    implementation "com.android.support:cardview-v7:${rootProject.ext.supportVersion}"
    implementation "com.android.support.constraint:constraint-layout:${rootProject.ext.constraintVersion}"
    implementation "com.google.android.gms:play-services-identity:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-base:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-analytics:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-gcm:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-location:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-maps:${rootProject.ext.playServiceVersion}"
    implementation "com.google.android.gms:play-services-ads:${rootProject.ext.playServiceVersion}"
    implementation "org.apache.commons:commons-lang3:${rootProject.ext.commonLangVersion}"
    implementation "com.fasterxml.jackson.core:jackson-databind:${rootProject.ext.jacksonVersion}"
    implementation "com.fasterxml.jackson.core:jackson-core:${rootProject.ext.jacksonVersion}"
    implementation "com.fasterxml.jackson.core:jackson-annotations:${rootProject.ext.jacksonVersion}"
    implementation "io.reactivex.rxjava2:rxjava:${rootProject.ext.rxJavaVersion}"
    implementation "io.reactivex.rxjava2:rxandroid:${rootProject.ext.rxAndroidVersion}"

    //SDK
    implementation "com.appsflyer:af-android-sdk:${rootProject.ext.appsFlyerVersion}@aar"
    implementation "com.facebook.android:facebook-android-sdk:${rootProject.ext.facebookSkdVersion}"
    implementation "com.facebook.android:audience-network-sdk:${rootProject.ext.facebookAudienceVersion}"
    implementation "com.flurry.android:analytics:${rootProject.ext.flurryVersion}"
    implementation "com.flurry.android:ads:${rootProject.ext.flurryVersion}"
    implementation files("libs/GoogleConversionTrackingSdk-${rootProject.ext.googleTrackingVersion}.jar")
    implementation("com.crashlytics.sdk.android:crashlytics:${rootProject.ext.crashliticsVersion}@aar") {
        transitive = true
    }

    //TEADS VIDEO
    implementation("tv.teads.sdk:androidsdk:${rootProject.ext.teadsVersion}:fullRelease@aar") {
        transitive = true
    }

    //OGURY - PRESAGE
    implementation files("libs/presage-lib-${rootProject.ext.oguryPresageVersion}-obfuscated.jar")

    //PUBNATIVE
    implementation "net.pubnative:sdk:${rootProject.ext.pubnativeVersion}"

    //PUBNATIVE - ADAPTERS
    implementation "net.pubnative:sdk.adapter.admob:${rootProject.ext.pnAdmobVersion}"
    implementation "net.pubnative:sdk.adapter.flurry:${rootProject.ext.pnFlurryVersion}"

    //ADMOB - ADAPTERS
    implementation "com.google.ads.mediation:facebook:${rootProject.ext.facebookAdapterVersion}"

    //SWRVE PLOT
    implementation "com.swrve.sdk.android:swrve-google:${rootProject.ext.swrveVersion}"
    implementation(name: "swrve-location-${rootProject.ext.swrveLocationVersion}", ext: "aar")

    //LOCALYTICS
    implementation "com.localytics.android:library:${rootProject.ext.localyticsVersion}"

    //JOB
    implementation "com.evernote:android-job:${rootProject.ext.evernoteAndroidJobVersion}"

    //APPTIMIZE
    implementation "com.apptimize:apptimize-android:${rootProject.ext.apptimizeVersion}"

    //COMSCORE
    implementation "com.comscore:android-analytics:${rootProject.ext.comScoreVersion}"

    //BOTTOM BAR
    implementation "com.roughike:bottom-bar:${rootProject.ext.bottomBarVersion}"

    //TEST
    androidTestImplementation "com.android.support:support-annotations:${rootProject.ext.supportVersion}"
    androidTestImplementation "com.android.support.test:runner:${rootProject.ext.testsVersion}"
    androidTestImplementation "com.android.support.test:rules:${rootProject.ext.testsVersion}"
    androidTestImplementation "com.android.support.test.espresso:espresso-core:${rootProject.ext.espressoVersion}"
    androidTestImplementation "com.android.support.test.espresso:espresso-intents:${rootProject.ext.espressoVersion}"
    androidTestImplementation("com.android.support.test.espresso:espresso-contrib:${rootProject.ext.espressoVersion}") {
        exclude group: 'com.android.support', module: 'appcompat-v7'
        exclude group: 'com.android.support', module: 'support-v4'
        exclude group: 'com.android.support', module: 'design'
        exclude module: 'recyclerview-v7'
    }

    testImplementation "junit:junit:${rootProject.ext.junitVersion}"
    testImplementation "org.mockito:mockito-core:${rootProject.ext.mockitoVersion}"
    testImplementation "org.powermock:powermock-api-mockito:${rootProject.ext.powermockVersion}"
    testImplementation "org.powermock:powermock-module-junit4:${rootProject.ext.powermockVersion}"
    testImplementation "org.powermock:powermock-module-junit4-rule:${rootProject.ext.powermockVersion}"
    testImplementation "org.powermock:powermock-classloading-xstream:${rootProject.ext.powermockVersion}"
    testImplementation "org.robolectric:robolectric:${rootProject.ext.robolectricVersion}"
    testImplementation "org.robolectric:shadows-multidex:${rootProject.ext.robolectricVersion}"
    testImplementation "org.robolectric:shadows-httpclient:${rootProject.ext.robolectricVersion}"
    testImplementation "com.android.support:support-annotations:${rootProject.ext.supportVersion}"
    testImplementation "com.squareup.assertj:assertj-android:${rootProject.ext.assertjVersion}"
}

apply plugin: 'com.google.gms.google-services'

最佳答案

在我的例子中,这是由于启动 Activity 的 AppCompatActivity 扩展,当它更改为 Activity 时,它工作正常!

关于Android 无法查找支持版本 27.0.0 的窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47138088/

有关Android 无法查找支持版本 27.0.0 的窗口的更多相关文章

  1. ruby-on-rails - 由于 "wkhtmltopdf",PDFKIT 显然无法正常工作 - 2

    我在从html页面生成PDF时遇到问题。我正在使用PDFkit。在安装它的过程中,我注意到我需要wkhtmltopdf。所以我也安装了它。我做了PDFkit的文档所说的一切......现在我在尝试加载PDF时遇到了这个错误。这里是错误:commandfailed:"/usr/local/bin/wkhtmltopdf""--margin-right""0.75in""--page-size""Letter""--margin-top""0.75in""--margin-bottom""0.75in""--encoding""UTF-8""--margin-left""0.75in""-

  2. ruby-on-rails - 无法使用 Rails 3.2 创建插件? - 2

    我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby​​1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在

  3. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  4. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  5. ruby - 无法让 RSpec 工作—— 'require' : cannot load such file - 2

    我花了三天的时间用头撞墙,试图弄清楚为什么简单的“rake”不能通过我的规范文件。如果您遇到这种情况:任何文件夹路径中都不要有空格!。严重地。事实上,从现在开始,您命名的任何内容都没有空格。这是我的控制台输出:(在/Users/*****/Desktop/LearningRuby/learn_ruby)$rake/Users/*******/Desktop/LearningRuby/learn_ruby/00_hello/hello_spec.rb:116:in`require':cannotloadsuchfile--hello(LoadError) 最佳

  6. ruby-on-rails - 项目升级后 Pow 不会更改 ruby​​ 版本 - 2

    我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby​​版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby​​版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘

  7. ruby-on-rails - 在 ruby​​ .gemspec 文件中,如何指定依赖项的多个版本? - 2

    我正在尝试修改当前依赖于定义为activeresource的gem:s.add_dependency"activeresource","~>3.0"为了让gem与Rails4一起工作,我需要扩展依赖关系以与activeresource的版本3或4一起工作。我不想简单地添加以下内容,因为它可能会在以后引起问题:s.add_dependency"activeresource",">=3.0"有没有办法指定可接受版本的列表?~>3.0还是~>4.0? 最佳答案 根据thedocumentation,如果你想要3到4之间的所有版本,你可以这

  8. ruby - 无法覆盖 irb 中的 to_s - 2

    我在pry中定义了一个函数:to_s,但我无法调用它。这个方法去哪里了,怎么调用?pry(main)>defto_spry(main)*'hello'pry(main)*endpry(main)>to_s=>"main"我的ruby版本是2.1.2看了一些答案和搜索后,我认为我得到了正确的答案:这个方法用在什么地方?在irb或pry中定义方法时,会转到Object.instance_methods[1]pry(main)>defto_s[1]pry(main)*'hello'[1]pry(main)*end=>:to_s[2]pry(main)>defhello[2]pry(main)

  9. ruby - 无法在 60 秒内获得稳定的 Firefox 连接 (127.0.0.1 :7055) - 2

    我使用的是Firefox版本36.0.1和Selenium-Webdrivergem版本2.45.0。我能够创建Firefox实例,但无法使用脚本继续进行进一步的操作无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055)错误。有人能帮帮我吗? 最佳答案 我遇到了同样的问题。降级到firefoxv33后一切正常。您可以找到旧版本here 关于ruby-无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055),我们在StackOverflow上找到一个类

  10. ruby - 当使用::指定模块时,为什么 Ruby 不在更高范围内查找类? - 2

    我刚刚被困在这个问题上一段时间了。以这个基地为例:moduleTopclassTestendmoduleFooendend稍后,我可以通过这样做在Foo中定义扩展Test的类:moduleTopmoduleFooclassSomeTest但是,如果我尝试通过使用::指定模块来最小化缩进:moduleTop::FooclassFailure这失败了:NameError:uninitializedconstantTop::Foo::Test这是一个错误,还是仅仅是Ruby解析变量名的方式的逻辑结果? 最佳答案 Isthisabug,or

随机推荐