Androidでネット上から動画や画像・サウンドをダウンロードして表示・再生
import android.widget.VideoView; import android.net.Uri; import android.view.View; import android.media.MediaPlayer; VideoView videoView; String video_name = "http://example.com/sample.mp4"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); videoView = (VideoView)findViewById(R.id.videoView); videoView.setVisibility(View.GONE); //video再生開始のリスナー videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mediaPlayer) { //ToDo } }); //video再生完了のリスナー videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener(){ @Override public void onCompletion(MediaPlayer mp) { //リピートする場合 // 先頭に戻す videoView.seekTo(0); // 再生開始 videoView.start(); } }); } @Override public void onDestroy() { videoView.suspend(); super.onDestroy(); } private void play_video(){ videoView.setVisibility(View.VISIBLE); videoView.setVideoURI(Uri.parse(video_name)); videoView.start(); } private void stop_video(){ videoView.setVisibility(View.GONE); videoView.stopPlayback(); }
<uses-permission android:name="android.permission.INTERNET" />
<VideoView android:id="@+id/videoView" android:layout_height="wrap_content" android:layout_width="wrap_content"> </VideoView>
import xxxxxx.ImageCache; import xxxxxx.R; import xxxxxx.UrlImageView; import xxxxxx.UrlImageView.OnImageLoadListener; UrlImageView mImageView; String image_name = "http://example.com/photo.jpg"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mImageView = (UrlImageView)findViewById(R.id.imageView); mImageView.setVisibility(View.GONE); } @Override public void onDestroy() { ImageCache.deleteAll(getCacheDir()); super.onDestroy(); } final private OnImageLoadListener imageLoadListener = new OnImageLoadListener() { @Override public void onStart(String url) { //Toast.makeText(getApplicationContext(), "start", Toast.LENGTH_SHORT).show(); } @Override public void onComplete(String url) { //Toast.makeText(getApplicationContext(), "end", Toast.LENGTH_SHORT).show(); } }; private void show_image(){ mImageView.setVisibility(View.VISIBLE); mImageView.setImageUrl(image_name, imageLoadListener); }
<uses-permission android:name="android.permission.INTERNET" />
<xxxxxx.UrlImageView
android:id="@+id/imageView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
import android.widget.ImageView; import java.net.URL; import java.io.InputStream; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import java.io.IOException; ImageView image1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); image1 = new ImageView(this); image1.setVisibility(View.GONE); addContentView(image1, new LayoutParams()); } private void show_image(){ URL url; InputStream istream; image1.setVisibility(View.VISIBLE); try { url = new URL("http://example.com/sample.jpg"); istream = url.openStream(); Bitmap bmp = BitmapFactory.decodeStream(istream); image1.setImageBitmap(bmp); istream.close(); } catch (IOException e) { e.printStackTrace(); } }
<uses-permission android:name="android.permission.INTERNET" />
import android.webkit.WebSettings; import android.webkit.WebViewClient; import android.webkit.WebView; private WebView webView = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); webView = new WebView(this); webView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); // } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); // } }); WebSettings webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); webView.setVisibility(View.GONE); addContentView(webView, new LayoutParams()); } private void show_animgif(){ webView.setVisibility(View.VISIBLE); webView.loadUrl("http://example.com/anim.gif"); }
<uses-permission android:name="android.permission.INTERNET" />
import android.media.MediaPlayer; import java.io.IOException; private MediaPlayer mp; String sound_name = "http://example.com/sound.mp3"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mp = new MediaPlayer(); } @Override public void onDestroy() { if (mp != null){ mp.reset(); mp.release(); mp = null; } super.onDestroy(); } private void play_sound(){ try { mp.setDataSource(sound_name); } catch (IllegalArgumentException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } catch (IllegalStateException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } catch (IOException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } try { // ループ再生の設定 mp.setLooping(true); mp.prepare(); } catch (IllegalStateException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } catch (IOException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } mp.start(); } private void stop_sound(){ mp.stop(); mp.reset();//違うサウンドを再生する場合 } private void pause_sound(){ mp.pause(); }
<uses-permission android:name="android.permission.INTERNET" />