2017-08-21 13 views
0

私はwebviewアプリ内でurlリンクを使用して携帯電話に.mp3ファイルをダウンロードします。私はこのアリーナの初心者です。多くの例が見られますが、私の現在のコードとは少し違うので、私は理解していません。私は混乱してしまった。 コードに基づいて..何のコードを入力する必要があるので、ユーザーはwebview内のURLリンクをクリックして、特に.mp3ファイルを内部メモリまたは外部メモリにダウンロードできますか?Android webview URLリンクを使用して任意のファイルまたはmp3ファイルをダウンロード

(activitymain.xml) 

<WebView android:id="@+id/webView" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" /> 

(AndroidManifest.xml) 

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/> 

(MainActivity.java) 

webview = (WebView) findViewById(R.id.webView); 
WebSettings webSettings = webview.getSettings(); 
webSettings.setJavaScriptEnabled(true); 

webview.setWebViewClient(new WebViewClient()); 
webview.loadUrl("WEBLINK"); 

答えて

0

あなたが見たことがありましたthis質問がありましたか?私はあなたがファイルのダウンロードにDownloadListenerを使用する必要があることとします

WebView.setDownloadListener

Registers the interface to be used when content can not be handled by the rendering engine, and should be downloaded instead. This will replace the current handler.

だから、あなたのコードは次のようになります。私はそれをした

webview.setDownloadListener(new DownloadListener() { 
    public void onDownloadStart(String url, String userAgent, 
       String contentDisposition, String mimetype, 
       long contentLength) { 
     Intent i = new Intent(Intent.ACTION_VIEW); 
     i.setData(Uri.parse(url)); 
     startActivity(i); 
    } 
}); 
+0

こんにちは芸術が、私はエラーを取得します:これを見てください:https://stackoverflow.com/questions/45780438/how-to-download-a-csv-file-created-in-js-to-your-android-phone-webview – Steven

関連する問題