2017-06-20 4 views
10

私は問題があり、可能な限り重複した質問と回答を見てきました。コンパイルappcompat v7:26.融合ロケーションプロバイダのプレイサービスを追加するときの+エラー

融合サービスプロバイダを使用するようにプレイサービスを更新しました。これで、私のgradleのappcompatがエラーを表示しています。

私は新しいプロジェクトを作成し、新しいプロジェクトのbuild.gradleをチェックして、まったく同じappcompatを持っていますが、プロジェクトにエラーが表示されています。

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 26 
buildToolsVersion "26.0.0" 
defaultConfig { 
    applicationId "au.com.itmobilesupport.sqltwo" 
    minSdkVersion 17 
    targetSdkVersion 26 
    versionCode 1 
    versionName "1.0" 
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
} 

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 'com.android.support:appcompat-v7:26.+' 
compile 'com.android.support:recyclerview-v7:26.+' 
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+' 
testCompile 'junit:junit:4.12' 
compile 'com.google.android.gms:play-services-maps:11.0.0' 
compile 'com.google.android.gms:play-services:11.0.1' 
} 

そのエラーを示している。このライン:

compile 'com.android.support:appcompat-v7:26.+' 

しかし、新しいプロジェクトの罰金で

。エラーが発生するのはなぜですか?

UPDATE:

私はこれらの2つの行を削除すると、エラーが消える:

compile 'com.google.android.gms:play-services-maps:11.0.0' 
compile 'com.google.android.gms:play-services:11.0.1' 

しかし、私は彼らがそうまだエラーを持っている必要があります。

+1

エラーの原因となっているcom.google.android.gms:play-services行だけであるようです。まだ解決策を探しています – timv

答えて

4

最後に、同様の質問にZeroOne's answerの助けを借りて問題を解決しました。

私はZeroOnesの答えを見て、私は理由を教えてくれましたが、エラーではありませんでした。私の問題は、次の行があまりにも包括的であり、多くの余分な依存関係が追加され、アプリケーションを不必要に大きくしてしまったということでした。

compile 'com.google.android.gms:play-services:11.0.1' 

私は単純に具体的にする必要があり、エラーは消えました。

ここは最終的な階調です。

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 26 
    buildToolsVersion "26.0.0" 
    defaultConfig { 
     applicationId "au.com.itmobilesupport.sqltwo" 
     minSdkVersion 17 
     targetSdkVersion 26 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

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 'com.android.support:appcompat-v7:26.+' 
    compile 'com.android.support:recyclerview-v7:26.+' 
    compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+' 
    testCompile 'junit:junit:4.12' 
    compile 'com.google.android.gms:play-services-maps:11.0.1' 
    compile 'com.google.android.gms:play-services-location:11.0.1' 
} 

そして、これは私が上記に変更specifcラインです:

compile 'com.google.android.gms:play-services-location:11.0.1' 

は、それが同じ問題に出くわす誰かに役立ちます願っています。

+1

非常に参考になったのでこれもチェックしてください。 https://developers.google.com/android/guides/setup – timv

+0

私はプレイサービスのコードを持っていませんが、(更新後に)新しく新しいプロジェクトを開始しても、これを取得します。私は無用に、正確なバージョン番号を使用してみました。このStackOverflow投稿は、この特定のエラーを正確に検索したときにGoogleが返す唯一のウェブページです(「+ blah blahを使用しない」を追加してください) – Joshua

5

build.gradleファイルにこれらの行を追加して、Google siteに基づいていないライブラリを入手してください。

allprojects { 
    repositories { 
     jcenter() 
     maven { 
      url "https://maven.google.com" 
     } 
    } 
} 

Caution: Using dynamic dependencies (for example, palette-v7:23.0.+) can cause unexpected version updates and regression incompatibilities. We recommend that you explicitly specify a library version (for example, palette-v7:25.4.0)

+0

これは私のために働いてくれてありがとうございます。 – user4500

+0

@ user4500、それは誰かを助けてくれてうれしいです。 –

+0

は私のプロジェクトには役に立たなかった –

0

コンパイル 'com.google.android.gms:play-services:11.0.1'をコンパイルするのではなく、 'com.google.android.gms:play-services-location:11.0.1'プロジェクトも同様に、たくさんの人がいます。

関連する問題