私はJavaやAndroidの開発に慣れていません(昨日から読み始めてください)。特定の URL で videoview を呼び出し、いくつかのヘッダーを渡したいと思います。私はウェブを検索し、この方法を見つけました:
package com.example.teste;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
import android.app.Activity;
import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Uri uri = Uri.parse("http://s2.ratotv.com/magic/4866/1.mp4");
Map<String, String> headers = new HashMap<String, String>();
headers.put("Host", "ratotv.com");
headers.put("Referer", "http://www.ratotv.net/movies/1038-kick-ass-2-agora-a-doer.html");
VideoView myVideoView = (VideoView)findViewById(R.id.myvideoview);
// Use java reflection call the hide API:
Method method;
try {
method = myVideoView.getClass().getMethod("setDataSource", new Class[] { Context.class, Uri.class, Map.class });
method.invoke(myVideoView, new Object[] {this, uri, headers});
myVideoView.start();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
ただし、ビデオの再生は開始されません。
どんな助けでも非常に高く評価されます。