2010.11.27———android 展示网络下的图片和播放视频

2010.11.27———android 展示网络上的图片和播放视频
2010.11.27———android 展示网络上的图片和播放视频

1、展示图片: ImageView

layout:


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  >
    <ImageView
    	android:layout_width="wrap_content" 
    	android:layout_height="wrap_content" 
    	android:id="@+id/imageView"
    	/>
    	
</LinearLayout>




PicShowActivity.java


package com.huitu.project;

import java.util.List;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.huitu.pojo.AD_TPXX;
import com.huitu.service.PicService;
import com.huitu.util.ImageUtil;
import com.huitu.util.JSONUtil;

public class PicShowAcitivity extends Activity {
	
	private ImageView iv;
	//private TextView title;
	//private TextView desc;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.picshow);
		
		iv = (ImageView)findViewById(R.id.imageView);
		//title = (TextView)findViewById(R.id.pic_show_title);
		//desc = (TextView)findViewById(R.id.pic_show_desc);
		
		//Intent intent = this.getIntent();
		//int id = intent.getIntExtra("id", 0);
		
		try {
			String json = PicService.query(id);
			if(!json.trim().equals("noValue")){
				List<AD_TPXX> list = JSONUtil.parseJSON_Pic_list(json);
				AD_TPXX bean = list.get(0);
				desc.setText(bean.getDescr());
				//图片的地址XXX/1.jpg
				String path = "http://10.169.53.126:8080/CPJW_2"+bean.getPath();
				path = path.replace("\\", "/");
				System.out.println(path);
				//得到图片的字节流 然后把图片画到手机上
				byte[] data = ImageUtil.getImage(path);
				System.out.println(data.length);
				Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
				iv.setImageBitmap(bitmap);
			}else{
				Toast.makeText(this, R.string.pic_show_error, 0).show();
			}
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

}




ImageUtil.java



package com.huitu.util;


import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;


public class ImageUtil {

	public static byte[] getImage(String path) throws Exception{
		URL url = new URL(path);
		HttpURLConnection conn = (HttpURLConnection) url.openConnection();
		conn.setConnectTimeout(5*1000);
		conn.setRequestMethod("GET");
		if(conn.getResponseCode()==200){
			InputStream inStream = conn.getInputStream();
			byte[] data = StreamTool.readStream(inStream);
			return data;
		}
		return null;
	}
}





2、播放网络上的视频


layout.xml : VideoView



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  >
  
    <LinearLayout 
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingTop="68px"
    >
    	<TextView  
		    android:layout_width="wrap_content" 
		    android:layout_height="wrap_content" 
		    android:text="@string/video_show_desc"
		    /> 
		<TextView  
		    android:layout_width="fill_parent" 
		    android:layout_height="wrap_content" 
		    android:id="@+id/video_show_desc"
		    /> 
    </LinearLayout>
    <VideoView
    	android:layout_width="fill_parent" 
    	android:layout_height="fill_parent" 
    	android:id="@+id/videoView"
    	android:paddingTop="10px"
    	/>
    	
</LinearLayout>


VideoShowActivity.java


package com.huitu.project;

import java.util.List;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.VideoView;

import com.huitu.pojo.AD_SPXX;
import com.huitu.service.VideoService;
import com.huitu.util.JSONUtil;

public class VideoShowAcitivity extends Activity {

	private VideoView vv;
	private TextView desc;
	//private MediaPlayer player;
	private MediaController control;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.videoshow);
		
		vv = (VideoView)findViewById(R.id.videoView);
		desc = (TextView)findViewById(R.id.video_show_desc);
		
		Intent intent = this.getIntent();
		int id = intent.getIntExtra("id", 0);
		
		try {
			String json = VideoService.query(id);
			if(!json.trim().equals("noValue")){
				List<AD_SPXX> list = JSONUtil.parseJSON_Video_list(json);
				AD_SPXX bean = list.get(0);
				desc.setText(bean.getDescr());
				String path = "http://10.169.53.126:8080/CPJW_2"+bean.getPath();
				path = path.replace("\\", "/");
				System.out.println(path);
				//player = MediaPlayer.create(this, VideoUtil.getVideo(path));
				vv.setVideoPath(path);
				
				control = new MediaController(this);
				control.setMediaPlayer(vv);
				vv.setMediaController(control);
				//.requestFocus();
				vv.start();
				
				
			}else{
				Toast.makeText(this, R.string.video_show_error, 0).show();
			}
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

}