2012-07-18 9 views
18

Tengo una aplicación HelloWorld de Android simple en Eclipse (Mac OS X), cuando instalo en el emulador/AVD la aplicación aparece en "Configuración -> [Dispositivos] Aplicaciones "pero no en el iniciador. Me he dado cuenta en Logcat que consigo estos erroresAndroid "No se encontró ningún proveedor de contenido para revocar el permiso"

W/ActivityManager( 160): No content provider found for permission revoke: file:///data/local/tmp/HelloWorld.apk 
W/ActivityManager( 160): No content provider found for permission revoke: file:///data/local/tmp/HelloWorld.apk 
I/PackageManager( 160): Running dexopt on: com.example.helloworld 
D/dalvikvm( 870): DexOpt: load 124ms, verify+opt 459ms, 720236 bytes 
I/ActivityManager( 160): Force stopping package com.example.helloworld uid=10044 

he puesto de lectura/escritura/ejecución permisos en el directorio .android.

+2

Ver http://stackoverflow.com/a/9532683/165674 http://stackoverflow.com/a/8646393/165674 http://stackoverflow.com/q/11073358/165674 –

+0

Gracias, pero he leyó y probó las recomendaciones de ese hilo –

+0

@Sean ThreadS, mencionó los permisos del directorio '.android' y'/data/local', ¿qué pasa con [eliminar 'dalvik-cache'] (http://stackoverflow.com/questions/9532653/android-4-0-3-emulator-install-failed-with-permission-revoke/9532683 # 9532683)? [Probando con esta aplicación] (http://stackoverflow.com/questions/11073358/android-error-message-on-install-no-content-provider-found#comment14494371_11073358)? [Probando otro dispositivo] (http://stackoverflow.com/a/11074769/85950)? ¿Todos esos dan el mismo error? – blahdiblah

Respuesta

6

En mi caso me olvidó definir principal actividad. Por lo tanto, agrego el siguiente código dentro de AndroidManifest.xml actividad principal.

<intent-filter> 
    <action android:name="android.intent.action.MAIN"/> 
    <category android:name="android.intent.category.LAUNCHER"/> 
</intent-filter> 

Ese fue el resultado para la definición de la actividad:

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity android:name="RssfeedActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN"/> 
      <category android:name="android.intent.category.LAUNCHER"/> 
     </intent-filter> 
    </activity> 
    <activity android:name="DetailActivity"></activity>   
</application> 
5

Creo que el problema está en los permisos del directorio de instalación. /data/local necesita tener permisos de escritura y ejecución para que los paquetes adb se instalen correctamente.

Source

Trate esto: Android - Download App

1

me acaba de encontrar solución a Linux, pero no he encontrado para Windows, tal vez porque en Windows los directorios y permisos estaban confundidos.

Me resulta útil: agregue el usuario "Todos" en la carpeta "C: //YourUser//.Android//" con control total, luego reinicie el emulador.

+0

Acabo de cambiar los permisos y la propiedad de la subcarpeta 'avd' y eso funcionó como un amuleto. –

0

Mi solución fue eliminar el androide: sharedUserId-Tag en el AndroidManifest.xml ...

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.my.app"
android:theme="@style/MyAppTheme"
android:versionCode="9"
android:versionName="1.2.5" android:sharedUserId="mc">

0

Trabajo en Córdoba y emulador,

Para mí, el problema era que el apk el tamaño era grande y AVD RAM era demasiado pequeño,

problema al instalar la nueva versión del apk y falló con el mensaje "No se encontró ningún proveedor de contenido para revocar el permiso"

cualquiera de los solucionado el problema para mí:

  • desinstalar el viejo apk manualmente antes de instalar la nueva versión
  • disminuir el tamaño apk
  • aumentar la memoria RAM del dispositivo
1

Tuve el mismo problema en todos mis dispositivos. Mi problema era de la configuración de ejecución, no marqué la "actividad predeterminada de inicio".

0

Esto funciona para mí

un chequeo de manifiesto de aplicación, si contiene esta línea tools:replace="android:icon"

<application android:name=".activities.MyApplication" android:allowBackup="true" android:icon="@drawable/launcher_icon" android:label="@string/app_name" android:largeHeap="true" tools:replace="android:icon">

que sea como esto elimine esta línea tools:replace="android:icon"

<application android:name=".activities.MyApplication" android:allowBackup="true" android:icon="@drawable/launcher_icon" android:label="@string/app_name" android:largeHeap="true" >

1

Me topé con este problema al compilar una nueva APK firmada.

Comprobé el V2 (firma de APK completa). La instalación de la APK en un dispositivo ya no funcionaba.

Mi solución fue comprobar el V1 (firma Jar) en su lugar. Esto funcionó.

+0

Esto realmente no responde la pregunta. ¿Qué significa 'verificar' en este contexto? ¿Dónde están las firmas que estás 'controlando'? ¿Qué significa para la solución 'trabajar'? – Elliot

+0

Supongo que está hablando de Android Studio -> generar firmado apk -> firmar con la opción V1 – yerlilbilgin

+0

Esto resolvió exactamente mi problema. Gracias – yerlilbilgin

Cuestiones relacionadas