2013-02-18 16 views
5

Ho un file online. Sto provando a giocare usando media player using live streaming. Ma il lettore multimediale dà un error (-1,1004) Penso che il mio lettore multimediale non ottenga l'url corretto in quanto contiene caratteri arabi quindi i ha provato a codificarlo con Html.encode o con la classe UrlEncoder ottenendo ancora lo stesso errore.Codifica URL non supportata

Così finalmente ho caricato l'url in webview e alla fine del caricamento della pagina ho passato l'url della pagina web al lettore multimediale.

WebView webView = new WebView(SongActivity.this); 
     webView.setSoundEffectsEnabled(false); 
     webView.loadUrl("MY URL"); 
     webView.setWebViewClient(new WebViewClient() { 
      public void onPageFinished(WebView view, String url) { 

       try { 

       playerService.startPlay(url);// this passes url to media player and url will be played using media player 

       } catch (IllegalArgumentException e) { 
        e.printStackTrace(); 
       } catch (IllegalStateException e) { 
        e.printStackTrace(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } 

      }; 

      public void onPageStarted(WebView view, String url, 
        android.graphics.Bitmap favicon) { 
       System.out.println("Decoding url:" + strURl); 
      }; 
     }); 

Funzionante, è anche in grado di riprodurre brani, ma questo non è uno standard. Per l'url normale (che non ha caratteri arabi) il codice del lettore multimediale funziona alla grande.

Potete fornirmi qualche soluzione standard su di esso ???

risposta

1

In base al codice di errore (-1,1004), sembra possibile ottenere HTTP 403 Proibito come risposta dal server. Hai provato Uri.encode(String) .toString() prima del mediaPlayer.setDataSource(String url)?

Da https://stackoverflow.com/a/4571518/262462:

Non utilizzare la classe URLEncoder! Nonostante il nome, quella classe esegue effettivamente la codifica dei moduli HTML, non la codifica URL.

+0

suo funzionamento, ma sto ricevendo errore (1, -2147483648). Per quello ho attraversato verificato il mio url così Uri.encode() inserendo alcuni caratteri aggiuntivi. –

+0

Non riesco a trovare alcun riferimento al codice di errore -2147483648. Cosa prendi in LogCat? Forse c'è qualche indizio su cosa significhi quell'errore. – Kuitsi

+0

Nel logcat mostra solo l'errore MediaPlayer (1, -2147483648). Nient'altro. Anche l'applicazione non si è arrestata. –