xitong获取SQlite音频

主类

package com.bai.xitong;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import com.bai.xitong.adapter.Adapter;
import com.bai.xitong.bean.Music;
public class MainActivity extends Activity {
 private ContentResolver resolver;
 private ListView lv;
 private MediaPlayer mp;
 private List<Music> lm=new ArrayList<Music>();
 private Adapter adapter;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  resolver=getContentResolver();
  lv=(ListView)findViewById(R.id.listView1);
  adapter=new Adapter(lm, this);
  lv.setAdapter(adapter);
  lv.setOnItemClickListener(listener);
 }
 OnItemClickListener listener=new OnItemClickListener() {
  @Override
  public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
    long arg3) {
   // TODO Auto-generated method stub
   Music m=(Music) adapter.getItem(arg2);
   if(mp!=null){
    mp.stop();
    mp.reset();
    mp=null;
   }
   mp=new MediaPlayer();
   try {
    mp.setDataSource(m.getPath());
    //mp.release();
    mp.prepare();
    mp.start();
   } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
 };
 public void huoqu(View v){
  if(lm.size()==0)
   lm.clear();
  //读取SqLite数据库中的音乐
  Cursor cursor = resolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
  while(cursor.moveToNext()){
   //获取歌名
   String name=cursor.getString(cursor.getColumnIndex("_display_name"));
   //获取全路径
   String path=cursor.getString(cursor.getColumnIndex("_data"));
   //获取作者
   String geshou=cursor.getString(cursor.getColumnIndex("title"));
   //获取音乐大小
   String shichang=cursor.getString(cursor.getColumnIndex("_size"));
   lm.add(new Music(name, path, geshou, shichang));
  }
  //重置适配器重新加载
  adapter.notifyDataSetChanged();
 }
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值