代码之家  ›  专栏  ›  技术社区  ›  Kostas

Google Play服务和WebView奇怪的交互

  •  0
  • Kostas  · 技术社区  · 8 年前

    我有一个应用程序,它使用谷歌的Vision API,并有一个显示一些互联网内容的网络视图。

    编译'com.google.android.gms:play服务:8+' 一切都准备好了,一切正常。

    我想使用最新版本,因此我将其更改为:

    编译'com.google.android.gms:play服务:9.6.1'

    然后,我达到了.dex文件中64K方法引用的限制 使用多索引库并更改清单文件并不能解决问题。

    编译“com.google.android.gms:play服务愿景:9.6.1”

    然后它可以编译,但在运行时,每次尝试在WebView中加载url时, 失败,调用onReceivedError时错误代码为-1。

    我不知道这是否重要,但WebView的实际使用是从一个与Play服务无关的库中完成的。

    有人能提议什么吗?

    1 回复  |  直到 8 年前
        1
  •  0
  •   Atiq    8 年前

    然后,我达到了.dex文件中64K方法引用的限制

    56k 方法。

    com.google.android.gms:play-services-vision:9.6.1 用于移动视觉。

    不过,我可以帮助您克服64方法的限制,请执行以下步骤

    但首先要确保你有许可

    <uses-permission android:name="android.permission.INTERNET" />
    

    以及主动互联网连接。

    首先,把这个放在你的 buidl.gradle

    dependencies {
        compile 'com.android.support:multidex:1.0.1'
    }
    

    然后 multiDexEnabled true

    android {
        compileSdkVersion 24
        buildToolsVersion "24.0.1"
    
        defaultConfig {
            ...
            minSdkVersion 14
            targetSdkVersion 24
            ...
    
            // Enabling multidex support.
            multiDexEnabled true
        }
    
    }
    

    然后转到您的menifest并在应用程序标签中

    <application
        android:name="android.support.multidex.MultiDexApplication">
    

    我希望这能解决你的问题。