J'ai un projet Android qui a été entièrement développé dans Android Studio (version 4.2, version 1.9-all)). Je souhaite ajouter des fonctionnalités de Google. Services de jeu.
Le projet est incapable de résoudre GooglePlayServicesUtil
, et lorsque j'entre l'importation manuellement (voir ci-dessous), j'obtiens Cannot resolve symbol 'common'
.
import com.google.Android.gms.common.GooglePlayServicesUtil;
Avez-vous une idée de ce que je dois faire pour résoudre GooglePlayServicesUtil
?
Depuis le Configuration des services Google Play , il semble que je doive simplement ajouter le com.google.Android.gms:play-services:4.+
dépendance à mon build.gradle
fichier (et resynchronisez les fichiers de projet avec gradle) pour rendre le SDK disponible pour mon projet. Je reçois un "paquet éclaté" dans ProjectName/module/build/exploded-bundles
, mais cela ne semble pas être le cas.
J'ai les services Google Play, Android Le référentiel de support et le référentiel Google sont déjà installés à partir du gestionnaire de SDK. Je les ai également supprimés et réinstallés plusieurs fois :)
Modifier:
Pourrais-je avoir besoin d'ajouter manuellement google_play_services en tant que projet/bibliothèque globale? J'ai essayé sans succès.
J'essaie de vérifier que je me développe par rapport à l'API de la plate-forme avec Google Services (si cela est même possible), mais je ne suis pas sûr que ce soit le cas. Rien que je change ne semble faire quelque chose.
Les bibliothèques externes de mon projet montrent:
Ceci est mon fichier ProjectName/module/build.gradle:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.Android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'Android'
repositories {
mavenCentral()
}
Android {
compileSdkVersion 19
buildToolsVersion '19.0.1'
defaultConfig {
minSdkVersion 17
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard true
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
signingConfigs {
}
productFlavors {
}
}
dependencies {
compile 'com.google.Android.gms:play-services:4.+'
compile 'joda-time:joda-time:2.3@jar'
}
Le com.google.Android.gms.version
nombre résout bien dans mon manifeste. Voici mon fichier ProjectName/module/src/main/AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="com.example.Android" >
<uses-sdk Android:minSdkVersion="17" Android:targetSdkVersion="19"/>
<application
Android:allowBackup="true"
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
<activity
Android:name="com.example.Android.MainActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity Android:name=".SecondActivity"/>
<meta-data Android:name="com.google.Android.gms.version"
Android:value="@integer/google_play_services_version" />
<provider
Android:name=".DataProvider"
Android:authorities="com.example.Android.provider" >
</provider>
<receiver Android:name=".WidgetProvider" >
<intent-filter>
<action Android:name="Android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data Android:name="Android.appwidget.provider"
Android:resource="@xml/widget_info" />
</receiver>
<service Android:name=".DatabaseService" />
<service Android:name=".WidgetProvider$UpdateService" />
</application>
</manifest>
Voici mon MainActivity, où j'essaie de vérifier si GooglePlayServices est disponible:
package com.example.Android;
import Android.app.Activity;
import Android.os.Bundle;
import Android.util.Log;
import com.google.Android.gms.common.GooglePlayServicesUtil;
public class MainActivity extends Activity {
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void onResume() {
Log.i(TAG, "onResume");
GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext());
}
}
Essayez ceci une fois et assurez-vous que vous n'obtenez aucune erreur dans la structure du projet en indiquant que "ComGoogleAndroidGmsPlay n'a pas été ajouté".
Ouvert File > Project Structure
et vérifiez ci-dessous. Si une erreur est affichée, cliquez sur l'ampoule rouge marquée et cliquez sur "Ajouter à la dépendance".
Ceci est un bogue de Android Studio et corrigé pour la prochaine version (0.4.3)
J'avais un problème similaire Impossible de résoudre com.google.Android.gms.common.
J'ai suivi le guide d'installation http://developer.Android.com/google/play-services/setup.html et ça marche!
Résumé:
compile 'com.google.Android.gms:play-services:4.0.30'
<meta-data Android:name="com.google.Android.gms.version" Android:value="@integer/google_play_services_version" />
J'ai résolu le problème en installant le package de services Google Play dans le gestionnaire de SDK.
Après cela, créez une nouvelle application & dans le build.gradle ajoutez ceci
compile 'com.google.Android.gms:play-services:4.3.+'
Comme ça
dependencies {
compile 'com.Android.support:appcompat-v7:+'
compile 'com.google.Android.gms:play-services:4.3.+'
}
Après des heures d’avoir le même problème, notez que si votre jar est dans le dossier libs, cela posera un problème une fois que vous l'avez défini dans les "Dépendances".
les dépendances
//compile fileTree(dir: 'libs', include: ['*.jar']) <-------- commented one
compile 'com.google.Android.gms:play-services:8.1.0'
compile 'com.Android.support:appcompat-v7:22.2.1'
et le problème a été résolu.
Je viens d’essayer votre build.gradle
Et l’importation de GMS a bien fonctionné, ce n’est donc pas le problème.
C'était avec Google Play services (rev 13)
et Google Repository (rev 4)
. Découvrez ceux qui sont installés une fois de plus :)
J'ai le même problème. J'ai juste essayé de reconstruire, nettoyer et redémarrer mais pas de chance. Puis je retire juste
compile 'com.google.Android.gms:play-services:8.3.0'
depuis build.gradle et resync. Après cela, je le répète et le resynchronise. A côté de cela, je nettoie le projet et le problème est parti !!
J'espère que cela aidera chacun d'entre vous à faire face à la même chose.