package keNan.com.music;
import keNan.com.music.R;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.view.Menu;
import android.view.MenuItem;
public class BackgroundMusicActivity extends Activity {
private SharedPreferences sp;
private boolean musicEn;
private MediaPlayer mediaPlayer;
private String musicUriString;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initPreferenceSettings();
}
private void initPreferenceSettings() {
// Play background music from user's choice in Settings.java
//SharedPreferences sharedPreferences = getSharedPreferences("keNan.com.music_preferences",MODE_WORLD_READABLE);
sp = PreferenceManager.getDefaultSharedPreferences(this);
musicEn = sp.getBoolean(getResources().getString(R.string.musicToggleKey), false);
final String musicUriString = sp.getString(getResources().getString(R.string.musiclistKey), null);
if (musicEn && (null != musicUriString)) {
Uri uri = Uri.parse(musicUriString);
/**
* If this.musicUriString doesn't equal musicUriString, it means that
* we change the title of the background music. So we need create a
* new mediaPlayer.
*/
if ((null == mediaPlayer) || false == this.musicUriString.equals(musicUriString)) {
this.musicUriString = musicUriString;
mediaPlayer = MediaPlayer.create(this, uri);
mediaPlayer.setLooping(true);
mediaPlayer.start();
} else {
mediaPlayer.start();
}
}
}
/**
* Pause music player.
*/
@Override
protected void onStop() {
super.onStop();
if (null != mediaPlayer) {
mediaPlayer.pause();
}
}
/**
* Replay music.
*/
@Override
protected void onRestart() {
super.onRestart();
initPreferenceSettings();
}
/**
* Release music resources.
*/
@Override
protected void onDestroy() {
super.onDestroy();
if (null != mediaPlayer) {
mediaPlayer.stop();
mediaPlayer.release();
mediaPlayer = null;
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.settings:
startActivity(new Intent(this, Settings.class));
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android背景音乐设置代码
共31个文件
class:10个
png:6个
xml:5个
5星 · 超过95%的资源 需积分: 50 427 下载量 4 浏览量
2011-11-27
17:56:06
上传
评论
收藏 65KB ZIP 举报
温馨提示
该程序实现了,选定SD卡上一首音乐文件作为程序的背景音乐的功能。 采用了PreferenceActivity的键值对保存方式。
资源推荐
资源详情
资源评论
收起资源包目录
Android背景音乐设置代码.zip (31个子文件)
BackgroundMusic
AndroidManifest.xml 824B
res
layout
main.xml 398B
drawable-ldpi
ic_launcher.png 2KB
menu
menu.xml 200B
drawable-mdpi
ic_launcher.png 3KB
xml
settings.xml 723B
drawable-hdpi
ic_launcher.png 4KB
values
strings.xml 699B
proguard.cfg 1KB
src
keNan
com
music
BackgroundMusicActivity.java 3KB
Settings.java 2KB
bin
classes
keNan
com
music
BackgroundMusicActivity.class 3KB
Settings.class 3KB
R.class 594B
R$layout.class 385B
R$attr.class 331B
R$id.class 377B
R$string.class 689B
R$xml.class 380B
R$menu.class 372B
R$drawable.class 398B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-mdpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
classes.dex 7KB
BackgroundMusic.apk 18KB
resources.ap_ 12KB
.classpath 364B
assets
project.properties 360B
.project 851B
gen
keNan
com
music
R.java 1KB
共 31 条
- 1
静思映雪
- 粉丝: 26
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
前往页