¿Qué es AppMeasurementService y por qué Android Studio agrega este servicio a mi aplicación?
Recientemente he empezado a diseñar una aplicación con Android Studio y parece Android Studio está agregando cosas a mi manifiesto sin mi conocimiento.
Por ejemplo, ha añadido un servicio:
com.google.android.gms.measurement.AppMeasurementService
Que no tengo ni idea de por qué está allí. Y también añade permisos como:
com.google.android.c2dmpermission.RECEIVE android.permission.USE_CREDENTIALS
Esto aumenta el tamaño y el consumo de memoria de mi aplicación por lo que quiero deshacerse de él, pero no he descubierto cómo.
Pensé que tal vez estaba en la "estructura del proyecto" elemento de menú en Android, pero no puede encontrar en cualquier lugar para apagarlo. Todos los desarrolladores de servicios están desactivados (aunque Analytics parece haber sido activt por defecto, pero lo apague).
¿Agradecería cualquier punteros a cómo puedo quitar todo esto añadió automáticamente la materia?
Gracias
Edit: Después de una investigación adicional resulta que mi AndrodManifest.xml en el
build\intermediates\manifests\full\release
Contiene mucha información adicional:
<!-- Include the AdActivity and InAppPurchaseActivity configChanges and themes. --> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> <activity android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity" android:theme="@style/Theme.IAPTheme" /> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <provider android:name="com.google.android.gms.measurement.AppMeasurementContentProvider" android:authorities="net.stefano.stefanoface.google_measurement_service" android:exported="false" /> <receiver android:name="com.google.android.gms.measurement.AppMeasurementReceiver" android:enabled="true" > <intent-filter> <action android:name="com.google.android.gms.measurement.UPLOAD" /> </intent-filter> </receiver> <service android:name="com.google.android.gms.measurement.AppMeasurementService" android:enabled="true" android:exported="false" /> <meta-data android:name="com.google.android.wearable.beta.app" android:resource="@xml/android_wear_micro_apk" />
Parece AdActivity y InAppPurchaseActivity se agrega automáticamente, pero todos los servicios de desarrollador están desactivados en la "Estructura del proyecto". ¿Por qué está ahí de todos modos?
El archivo build.gradle:
compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "net.stefano.stefanoface" minSdkVersion 18 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } productFlavors { } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) wearApp project(':wear') compile 'com.android.support:appcompat-v7:22.2.1' compile 'com.google.android.gms:play-services:8.1.0' compile 'com.android.support:design:22.2.1' compile 'com.google.android.gms:play-services-base:7.5.0' }
Sí, estoy desarrollando una aplicación de uso por lo que necesito tener acceso a Google Play Services, pero sólo a la parte de desgaste.
Gracias
Vaya al archivo build.gradle
su módulo (por ejemplo, app/build.gradle
). Mira el cierre de las dependencies
. Debería tener más de 1 entradas en el mismo, con al menos una procedente del SDK de Play Services, basada en sus síntomas. Identifique lo que tiene allí y elimine los elementos que no desea.
Vea también esta respuesta de SO y esta entrada del blog .