我想在我的Android应用中使用Firebase云消息传递。 这是我的应用级gradle文件
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Main {
public static void main(String[] args) throws Exception {
String data = "Nike, Adidas, Reebok";
List<Set<String>> itemsetList = new ArrayList<>();
itemsetList.add(new HashSet<String>(Arrays.asList(data.split(",\\s"))));
for (Set<String> set : itemsetList)
{
for (String string : set)
System.out.println(string);
}
}
}
这是我的根级别gradle文件
apply plugin: 'com.android.application'
android {
signingConfigs {
config {
keyAlias 'androiddebugkey'
keyPassword 'android'
}
config1 {
keyPassword 'android'
}
}
compileSdkVersion 23
buildToolsVersion "23.0.3"
packagingOptions {
exclude 'main/AndroidManifest.xml'
}
defaultConfig {
applicationId "com.shikhar.dexter.project"
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.google.firebase:firebase-messaging:10.0.1'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'com.android.support:recyclerview-v7:23.4.0'
compile 'com.android.support:support-v4:23.4.0'
compile 'com.google.android.gms:play-services:9.0.0'
compile 'com.google.android.gms:play-services-auth:9.0.0'
}
apply plugin: 'com.google.gms.google-services'
编译时会显示以下错误:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
classpath 'com.google.gms:google-services:3.0.0'
classpath 'com.android.tools.build:gradle:2.1.0'
// NOTE: Do not place your application depndencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
maven{
url "http://dl.bintray.com/dasar/maven"
}
}
}
我尝试使用各种Google Play服务版本,例如9.4.0,但它仍无效。
答案 0 :(得分:23)
打开SDK Manager并确保您拥有最新的&#34; Google Play服务&#34;依赖下载。
答案 1 :(得分:16)
除了按照John Oreilly的建议下载最新的“Google Play服务”之外,我还必须更新我的“Google Repository”才能让它发挥作用。
在Android Studio中,转到“工具 - &gt; Android - &gt; SDK管理器”。在SDK管理器中选择“SDK工具”选项卡,在“支持存储库”下面找到“Google存储库”,如果它没有使用最新版本,请进行升级。
答案 2 :(得分:5)
可能需要更新 Google Play服务和 Google存储库。
在Android Studio SDK Manager :
中答案 3 :(得分:1)
尝试添加相同版本的所有Google依赖项,并在SDK管理器中更新“Google Play服务”。
compile 'com.google.firebase:firebase-appindexing:10.0.0'
compile 'com.google.android.gms:play-services-auth:10.0.0'
compile 'com.google.android.gms:play-services-places:10.0.0'
答案 4 :(得分:0)
刚出现问题,从Support Repository v44更新到v45(2107年3月中旬);存储库位置突然改变,因此一些依赖关系破坏,导致完全相同的错误消息(我之所以要将其添加为可能的答案)。
在项目级别 i = 1 #your value for i
b = (i-a)/2
while a+b <= i:
# Other code
b+=1
中,存储库v44位于:
build.gradle
同时,存储库v45位于:
repositories {
maven { url '... /sdk/extras/android/m2repository' }
}
为了刷新并获取调试信息:
repositories {
maven { url '... /sdk/extras/m2repository' }
}
即使使用其他版本的存储库,也可以帮助浏览目录结构并将存储库的位置与./gradlew clean --debug
中引用的位置进行比较,该位置应该托管这些依赖项。
答案 5 :(得分:-1)
我在计算机中解决了这个问题(我使用Intelij)
我做的是:
1)转到tools
- &gt; SDK manager
并更新google play serve和google repstories。
2)在allprojects-&gt; repstories
maven { url "https://maven.google.com" }