No se puede encontrar la clase de actividad explícita {}; Has declarado esta actividad en tu AndroidManifest.xml
Estoy intentando descomprimir algunos archivos en segundo plano, así que utilizo IntentService como en el tutorial de google. Mi clase de servicio declarada en AndroidManifest es la siguiente:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.osmdroid"> <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" /> <application android:configChanges="orientation|screenSize|keyboardHidden" android:hardwareAccelerated="true" android:icon="@drawable/ecn_icon" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MapActivity" android:icon="@drawable/ecn_icon" android:label="test" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".SettingsActivity" android:label="@string/title_activity_settings"> </activity> <service android:name=".UnZipService" android:exported="false"/> </application>
En actividad, tengo
- ¿Cuál es la mejor manera de combinar (fusionar) 2 JSONObjects?
- Error de vista web de Android "Señal fatal 5 (SIGTRAP)"
- Cómo agregar un proyecto para crear ruta de acceso en IntelliJ Idea
- Cambio de color con LinearLayout y TextView en Java (Android)
- Argumentos / variables personalizados pasados al emulador de Android
IntentFilter intentFilter = new IntentFilter(DownloadManager .ACTION_DOWNLOAD_COMPLETE); receiverDownloadComplete = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { long reference = intent.getLongExtra(DownloadManager .EXTRA_DOWNLOAD_ID, -1); if (myDownloadReference == reference) { ... switch (status) { case DownloadManager.STATUS_SUCCESSFUL: Intent mServiceIntent = new Intent(context, UnZipService.class); mServiceIntent.setData(Uri.parse(savedFilePath)); startActivity(mServiceIntent); break; ... } cursor.close(); } } }; registerReceiver(receiverDownloadComplete, intentFilter);
Y servicio aquí:
public class UnZipService extends IntentService { public UnZipService() { super("UnZipService"); } @Override protected void onHandleIntent(Intent workIntent) { String dataString = workIntent.getDataString(); Log.v("IntentURI", dataString); Toast.makeText(this, "Installing....", Toast.LENGTH_SHORT).show(); }
Debería mostrar tostadas sólo para la prueba, pero siempre obtengo un error:
01-29 19:08:25.740 15521-15521/org.osmdroid E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.RuntimeException: Error receiving broadcast Intent { act=android.intent.action.DOWNLOAD_COMPLETE flg=0x10 pkg=org.osmdroid (has extras) } in org.osmdroid.SettingsActivity$1@21292650 at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:768) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:150) at android.app.ActivityThread.main(ActivityThread.java:5147) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method) Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {org.osmdroid/org.osmdroid.UnZipService}; have you declared this activity in your AndroidManifest.xml? at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1618) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1417) at android.app.Activity.startActivityForResult(Activity.java:3404) at android.app.Activity.startActivityForResult(Activity.java:3365) at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:817) at android.app.Activity.startActivity(Activity.java:3600) at android.app.Activity.startActivity(Activity.java:3568) at org.osmdroid.SettingsActivity$1.onReceive(SettingsActivity.java:148) at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:758) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:150) at android.app.ActivityThread.main(ActivityThread.java:5147) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method)
Ambos (clase y actividad) en la misma carpeta (org.osmdroid). Parece que los caminos están bien, pero el problema aparece y no tengo más ideas …
- Android Studio 3.0 Canary 1: Las pruebas de Kotlin o las pruebas de Java referentes a las clases de Kotlin fallan
- Jackson ObjectMapper Definiciones de definiciones conflictivas (Android.Graphics.Bitmap)
- Datos no tamaño de bloque alineado en codenameone BouncyCastle (Sin relleno)
- ¿Hay alguna biblioteca o algoritmo para el calendario persa (Shamsi o Jalali) en Android?
- Android calcula la distancia entre dos ubicaciones
- Libgdx - cómo agregar la imagen de fondo en la etapa?
- Volley RequestQueue Tiempo de espera
- "Id no puede ser cero" - GoogleJsonResponseException 400 Petición incorrecta
Estás iniciando un servicio como actividad
Cambio
Intent mServiceIntent = new Intent(context, UnZipService.class); mServiceIntent.setData(Uri.parse(savedFilePath)); startActivity(mServiceIntent);
a
Intent mServiceIntent = new Intent(context, UnZipService.class); mServiceIntent.setData(Uri.parse(savedFilePath)); startService(mServiceIntent); // Only this line is changed
- Barra de herramientas de acceso (y sus hijos) de fragmento?
- La vista previa de la cámara no está reiniciando?