私は現在webview
を持っています。あなたがmp3リンクを押すと、mp3が再生を開始します。私たちは最近、すべてのリンクを変更しましたが、現在は "http"ではなく "https"になっています。ログ・キャットから受け取ったエラーは次のとおりです。Android-launch URLリンクからmp3をダウンロード
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): FATAL EXCEPTION: main
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=https://s3.amazonaws.com/StopDropRave/Week+of+August+8/Flawless+ft.+Army+of+Karmen+-+L.I.E.+%28Love+Automatic+Dubstep+Remix%29.mp3 typ=audio/* }
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1409)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.Activity.startActivityFromChild(Activity.java:3067)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.Activity.startActivityForResult(Activity.java:2847)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.Activity.startActivity(Activity.java:2933)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at ravebox.dev.sdr.BlogActivity$HelloWebViewClient$1.onClick(BlogActivity.java:158)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:159)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.os.Handler.dispatchMessage(Handler.java:99)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.os.Looper.loop(Looper.java:123)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at android.app.ActivityThread.main(ActivityThread.java:3835)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at java.lang.reflect.Method.invokeNative(Native Method)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at java.lang.reflect.Method.invoke(Method.java:507)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
08-09 17:26:59.060: ERROR/AndroidRuntime(5574): at dalvik.system.NativeStart.main(Native Method)
httpsのためかどうかわかりません。いい考えはありません。何か案は?また、ここで
<activity android:name=".BlogActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
私はリスニング部分を扱う私のコードの一部です:感謝
これは、この特定の活動の私のマニフェストの一部です。基本的に、ユーザーが聴いたりダウンロードしたりするためのダイアログを開きます。ダウンロードは完璧ですが、httpsへのリンクを変更した後ではリッスンしません。
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(final WebView view,
final String url) {
view.loadUrl(url);
view.getSettings().getAllowFileAccess();
view.getSettings().setJavaScriptEnabled(true);
view.getCertificate();
// load the dropbox files so people can listen to the track
if (url.startsWith("https://") && url.endsWith(".mp3")) {
view.getCertificate();
progressWebView.dismiss();
progressWebView.cancel();
/*blogDialog.setButton("Listen",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(url), "audio/*");
view.getContext().startActivity(intent);
}
});*/
blogDialog.setButton2("Download",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
sdrUrl = url.toString();
new DownloadFile().execute();
}
});
blogDialog.show();
} else {
return super.shouldOverrideUrlLoading(view, url);
}
return true;
}
}
リンクをhttpsに変更する前に再生がテストされましたか? – Deepak
@Deepak:はい、すべてが完全に機能していました。まったく問題はなかった。 – Splitusa
マニフェストファイルのインテントフィルタを確認できますか?フィルタは、再生したいデータや種類のものと一致していないようですか?フィルタの一部で 'http://'がハードコードされているかどうかを確認します。 – Deepak