Desceptación fatal de descargador MP3 -- java campo con android campo con soundcloud camp Relacionados El problema

MP3 downloader Fatal Exception


0
vote

problema

Español

Tengo este código fuente para una aplicación de descarga de MP3, y funcionó bien la última vez que lo usé, hace unos meses. Ahora, cuando lo intento, me da un error, cuando hago clic en una canción para descargarlo, desde los resultados de búsqueda. Aquí está el error:

  08-01 13:06:09.227: E/AndroidRuntime(2075): FATAL EXCEPTION: main 08-01 13:06:09.227: E/AndroidRuntime(2075): Process: com.soundload, PID: 2075 08-01 13:06:09.227: E/AndroidRuntime(2075): java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Boolean de.voidplus.soundcloud.Track.isStreamable()' on a null object reference 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.baixavideos.Downloader.onPostExecute(Downloader.java:41) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.baixavideos.Downloader.onPostExecute(Downloader.java:1) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask.finish(AsyncTask.java:636) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask.access$500(AsyncTask.java:177) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:653) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.Handler.dispatchMessage(Handler.java:102) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.Looper.loop(Looper.java:135) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.app.ActivityThread.main(ActivityThread.java:5254) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at java.lang.reflect.Method.invoke(Native Method) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at java.lang.reflect.Method.invoke(Method.java:372) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 08-01 13:06:11.353: W/System.err(2174): java.io.IOException: open failed: EACCES (Permission denied) 08-01 13:06:11.353: W/System.err(2174):     at java.io.File.createNewFile(File.java:941) 08-01 13:06:11.354: W/System.err(2174):     at de.voidplus.soundcloud.SoundCloud.<init>(Unknown Source) 08-01 13:06:11.354: W/System.err(2174):     at com.baixavideos.ui.MainActivity.<clinit>(MainActivity.java:63) 08-01 13:06:11.354: W/System.err(2174):     at java.lang.reflect.Constructor.newInstance(Native Method) 08-01 13:06:11.354: W/System.err(2174):     at java.lang.Class.newInstance(Class.java:1606) 08-01 13:06:11.354: W/System.err(2174):     at android.app.Instrumentation.newActivity(Instrumentation.java:1066)   

descargador.java:

  package com.baixavideos;  import com.baixavideos.ui.SongDetails;  import de.voidplus.soundcloud.SoundCloud; import de.voidplus.soundcloud.Track;  import android.os.AsyncTask; import android.util.Log;  public class Downloader extends AsyncTask<String, Void, Track>{      private int id;     private SoundCloud soundcloud;     private SongDetails ui;      public Downloader(){         soundcloud = new SoundCloud("cd07b57592f6d914f437f8ab2856363d", "841953bd718a3ceb427b3e3be170a014");      }      public int getId() {         return id;     }      public Downloader setId(int id) {         this.id = id;          return this;     }      @Override     protected Track doInBackground(String... arg0) {                 Track track = soundcloud.getTrack(getId());         return track;     }      @Override     protected void onPostExecute(Track track) {         super.onPostExecute(track);          if(track.isStreamable()){             getUi().onSongLoaded(track);         } else {             getUi().onStreamingError();         }     }      public SongDetails getUi() {         return ui;     }      public Downloader setUi(SongDetails ui) {         this.ui = ui;          return this;     }     }   
Original en ingles

I have this source code for an mp3 download app, and it worked fine last time I used it, few months ago. Now when I try it, it gives me an error, when I click on a song to download it, from search results. Here's the error:

08-01 13:06:09.227: E/AndroidRuntime(2075): FATAL EXCEPTION: main 08-01 13:06:09.227: E/AndroidRuntime(2075): Process: com.soundload, PID: 2075 08-01 13:06:09.227: E/AndroidRuntime(2075): java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Boolean de.voidplus.soundcloud.Track.isStreamable()' on a null object reference 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.baixavideos.Downloader.onPostExecute(Downloader.java:41) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.baixavideos.Downloader.onPostExecute(Downloader.java:1) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask.finish(AsyncTask.java:636) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask.access$500(AsyncTask.java:177) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:653) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.Handler.dispatchMessage(Handler.java:102) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.os.Looper.loop(Looper.java:135) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at android.app.ActivityThread.main(ActivityThread.java:5254) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at java.lang.reflect.Method.invoke(Native Method) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at java.lang.reflect.Method.invoke(Method.java:372) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 08-01 13:06:09.227: E/AndroidRuntime(2075):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 08-01 13:06:11.353: W/System.err(2174): java.io.IOException: open failed: EACCES (Permission denied) 08-01 13:06:11.353: W/System.err(2174):     at java.io.File.createNewFile(File.java:941) 08-01 13:06:11.354: W/System.err(2174):     at de.voidplus.soundcloud.SoundCloud.<init>(Unknown Source) 08-01 13:06:11.354: W/System.err(2174):     at com.baixavideos.ui.MainActivity.<clinit>(MainActivity.java:63) 08-01 13:06:11.354: W/System.err(2174):     at java.lang.reflect.Constructor.newInstance(Native Method) 08-01 13:06:11.354: W/System.err(2174):     at java.lang.Class.newInstance(Class.java:1606) 08-01 13:06:11.354: W/System.err(2174):     at android.app.Instrumentation.newActivity(Instrumentation.java:1066) 

Downloader.java:

package com.baixavideos;  import com.baixavideos.ui.SongDetails;  import de.voidplus.soundcloud.SoundCloud; import de.voidplus.soundcloud.Track;  import android.os.AsyncTask; import android.util.Log;  public class Downloader extends AsyncTask<String, Void, Track>{      private int id;     private SoundCloud soundcloud;     private SongDetails ui;      public Downloader(){         soundcloud = new SoundCloud("cd07b57592f6d914f437f8ab2856363d", "841953bd718a3ceb427b3e3be170a014");      }      public int getId() {         return id;     }      public Downloader setId(int id) {         this.id = id;          return this;     }      @Override     protected Track doInBackground(String... arg0) {                 Track track = soundcloud.getTrack(getId());         return track;     }      @Override     protected void onPostExecute(Track track) {         super.onPostExecute(track);          if(track.isStreamable()){             getUi().onSongLoaded(track);         } else {             getUi().onStreamingError();         }     }      public SongDetails getUi() {         return ui;     }      public Downloader setUi(SongDetails ui) {         this.ui = ui;          return this;     }     } 
        

Lista de respuestas

1
 
vote

La razón es que la identificación que ha establecido en el descargador (o probablemente la identificación nunca se estableció) está incorrecta, y no hay una pista con un ID de este tipo en soundcloud . La variable track no se puede inicializar y permanece nulo.
La razón por la que trabajó anteriormente es, ese tiempo está usando una ID de pista válida

 

the reason is that the id that you've set to Downloader (or probably the id was never set at all) is wrong, and there is no track with such an id in soundcloud. the track variable cannot be initialized and remains null.
the reason why it worked before is, that time you were using a valid track id

 
 

Relacionados problema

1  ¿Por qué estoy obteniendo errores de OAUTH al usar la API de SoundCloud?  ( Why am i getting oauth errors when using the soundcloud api ) 
He creado una aplicación de prueba de iPhone. También he integrado SoundCloud con la solicitud de prueba. También obtuve la clave del consumidor y el secret...

0  Corriente de recepción de SoundCloud en diferentes formatos de archivo  ( Receiving stream from soundcloud in different file formats ) 
En este momento estoy usando URL para generar src="" para una etiqueta de audio que se parece a: <audio src="http://api.soundcloud.com/tracks/81827374/st...

0  Ruby SoundCloud GEM: No se puede probar el archivo cargado  ( Ruby soundcloud gem cannot test uploaded file ) 
No he visto mucho en las pruebas para la gema de SoundCloud. La mayoría, todo ha sido espléndido, sin embargo, descubrí que la carga de archivos a SoundCloud ...

0  Determinar los valores correctamente  ( Determine values correctly ) 
¿Cómo puedo determinar el token de autenticación (OAURUTH_TOKEN), TITULARIO DE PISTA (pista [título]), el archivo (pista [asset_data]) valora correctamente en...

0  Sube archivo de audio a SoundCloud usando C #  ( Upload audio file to soundcloud using c sharp ) 
WebClient client = new WebClient(); string postData = "client_id=" + "b408123adf1e3a950876d84475587ca2" + "&client_secret=" + "d74a342169f5...

1  Cómo iniciar los servicios de transmisión de ingeniería inversa  ( How to start reverse engineering streaming services ) 
Estoy tratando de comprender cómo revertir el ingeniero de la URL para descargar flores. Sé que hay herramientas de souciones abiertas, que hacen eso, pero ...

1  Usando SoundCloud como un archivo de audio  ( Using soundcloud as an audio file serve ) 
Me gustaría almacenar muestras para mi aplicación de iPhone en SoundCloud. Esto me permitiría empaquetar un binario pequeño y hacer que los usuarios descargue...

3  Implementación de API de SoundCloud en la aplicación de iOS - Obtención de errores  ( Implementing soundcloud api in ios app getting error ) 
He seguido las instrucciones para incluir la API de nube de sonido en mi aplicación en el siguiente enlace exactamente: https://github.com/soundcloud/cocoa...

1  Juega automáticamente a Siguiente SoundCloud  ( Automatically play next soundcloud ) 
Actualmente estoy trabajando en mi blog de música, y estoy tratando de que los widgets comiencen cuando termine anteriormente. Tengo los widgets de SoundCloud...

1  SoundCloud HTML5 Player: Events.Finish solo disparó una vez  ( Soundcloud html5 player events finish only fired once ) 
Estoy usando el reproductor SC HTML5, cuando un sonido termina, me cargo en otra fuente, sin embargo, el evento Finalizar solo parece disparar para la primera...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos