Android RingtoneManager铃声管理

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
package  com.Aina.Android;
 
import  java.io.File;
 
import  android.app.Activity;
import  android.content.Intent;
import  android.media.RingtoneManager;
import  android.net.Uri;
import  android.os.Bundle;
import  android.os.Environment;
import  android.view.View;
import  android.widget.Button;
 
public  class  Test  extends  Activity {
     /** Called when the activity is first created. */
     private  Button btn1 =  null ;
     private  Button btn2 =  null ;
     private  Button btn3 =  null ;
     private  static  final  int  Ringtone =  0 ;
     private  static  final  int  Alarm =  1 ;
     private  static  final  int  Notification =  2 ;
     private  static  final  String FileRingtone = Environment
             .getExternalStorageDirectory()
             "/music/ringtones" ;
     private  static  final  String FileAlarm = Environment
             .getExternalStorageDirectory()
             "/music/alarms" ;
     private  static  final  String FileNotification = Environment
             .getExternalStorageDirectory()
             "/music/notifications" ;
 
     @Override
     public  void  onCreate(Bundle savedInstanceState) {
         super .onCreate(savedInstanceState);
         setContentView(R.layout.main);
         btn1 = (Button)  this .findViewById(R.id.Button01);
         btn2 = (Button)  this .findViewById(R.id.Button02);
         btn3 = (Button)  this .findViewById(R.id.Button03);
         btn1.setOnClickListener( new  Button.OnClickListener() {
 
             public  void  onClick(View arg0) {
                 // TODO Auto-generated method stub
                 if  (isFile(FileRingtone)) {
                     // 打开系统铃声设置
                     Intent intent =  new  Intent(
                             RingtoneManager.ACTION_RINGTONE_PICKER);
                     // 设置类型为来电
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
                             RingtoneManager.TYPE_RINGTONE);
                     // 设置显示的标题
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,
                             "设置来电铃声" );
                     startActivityForResult(intent, Ringtone);
                 }
             }
 
         });
         btn2.setOnClickListener( new  Button.OnClickListener() {
 
             public  void  onClick(View v) {
                 // TODO Auto-generated method stub
                 if  (isFile(FileAlarm)) {
                     Intent intent =  new  Intent(
                             RingtoneManager.ACTION_RINGTONE_PICKER);
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
                             RingtoneManager.TYPE_ALARM);
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,
                             "设置闹钟铃声" );
                     startActivityForResult(intent, Alarm);
                 }
             }
 
         });
         btn3.setOnClickListener( new  Button.OnClickListener() {
 
             public  void  onClick(View v) {
                 // TODO Auto-generated method stub
                 if  (isFile(FileNotification)) {
                     Intent intent =  new  Intent(
                             RingtoneManager.ACTION_RINGTONE_PICKER);
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
                             RingtoneManager.TYPE_NOTIFICATION);
                     intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,
                             "设置通知铃声" );
                     startActivityForResult(intent, Notification);
                 }
 
             }
 
         });
     }
 
     /**
      * 设置铃声之后的回调函数
      */
     @Override
     protected  void  onActivityResult( int  requestCode,  int  resultCode, Intent data) {
         super .onActivityResult(requestCode, resultCode, data);
         if  (resultCode != RESULT_OK) {
             return ;
         else  {
             // 得到我们选择的铃声
             Uri uri = data
                     .getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
             if  (uri !=  null ) {
                 switch  (requestCode) {
                 case  Ringtone:
                     RingtoneManager.setActualDefaultRingtoneUri( this ,
                             RingtoneManager.TYPE_RINGTONE, uri);
                     break ;
                 case  Alarm:
                     RingtoneManager.setActualDefaultRingtoneUri( this ,
                             RingtoneManager.TYPE_ALARM, uri);
                     break ;
                 case  Notification:
                     RingtoneManager.setActualDefaultRingtoneUri( this ,
                             RingtoneManager.TYPE_NOTIFICATION, uri);
                     break ;
                 default :
                     break ;
                 }
             }
 
         }
     }
 
     /**
      * 判断文件是否存在,不存在则创建.
      *
      * @param path
      * @return
      */
     private  boolean  isFile(String path) {
         boolean  b =  false ;
         File f =  new  File(path);
         if  (f.exists()) {
             b =  true ;
         else  {
             if  (f.mkdirs()) {
                 b =  true ;
             else  {
                 b =  false ;
             }
         }
         return  b;
     }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? xml  version="1.0" encoding="utf-8"?>
< LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical" android:layout_width="fill_parent"
     android:layout_height="fill_parent">
     < TextView  android:layout_width="fill_parent"
         android:layout_height="wrap_content" android:text="@string/hello" />
     < Button  android:text="设置来电铃声" android:id="@+id/Button01"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content">
     </ Button >
     < Button  android:text="设置闹钟铃声" android:id="@+id/Button02"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content">
     </ Button >
     < Button  android:text="设置通知铃声" android:id="@+id/Button03"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content">
     </ Button >
</ LinearLayout >
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? xml  version="1.0" encoding="utf-8"?>
< manifest  xmlns:android="http://schemas.android.com/apk/res/android"
       package="com.Aina.Android"
       android:versionCode="1"
       android:versionName="1.0">
     < application  android:icon="@drawable/icon" android:label="@string/app_name">
         < activity  android:name=".Test"
                   android:label="@string/app_name">
             < intent-filter >
                 < action  android:name="android.intent.action.MAIN" />
                 < category  android:name="android.intent.category.LAUNCHER" />
             </ intent-filter >
         </ activity >
 
     </ application >
< uses-permission  android:name="android.permission.INTERNET" />
< uses-permission  android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
 
</ manifest >


本文转自java豆子博客园博客,原文链接:http://www.cnblogs.com/error404/archive/2011/08/04/2127233.html,如需转载请自行联系原作者
相关文章
|
3月前
|
数据采集 小程序 数据可视化
智慧校园电子班牌管理系统源码 Java Android原生
家长通过家长小程序端随时了解孩子在校的情况,实时接收学生的出勤情况,学生到校、离校时间。随时了解学生在校的表现、学生成绩排名,及时与教师沟通,关注孩子的健康成长。
30 0
智慧校园电子班牌管理系统源码 Java Android原生
|
5月前
|
Java 关系型数据库 MySQL
0002Java安卓程序设计-基于Uniapp+springboot菜谱美食饮食健康管理App2
0002Java安卓程序设计-基于Uniapp+springboot菜谱美食饮食健康管理App
34 0
|
1天前
|
存储 开发工具 Android开发
Android系统 权限组管理和兼容性
Android系统 权限组管理和兼容性
8 0
|
1月前
|
Shell 开发工具 Android开发
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
504 2
|
5月前
|
Android开发
0002Java安卓程序设计-基于Uniapp+springboot菜谱美食饮食健康管理App1
0002Java安卓程序设计-基于Uniapp+springboot菜谱美食饮食健康管理App
61 0
|
6月前
|
存储 安全 Java
Android DataStore:安全存储和轻松管理数据
Android DataStore:安全存储和轻松管理数据
|
2月前
|
小程序 Java 数据挖掘
Java校园智慧管理云平台源码 小程序+android电子班牌系统
智慧校园技术架构 ❀后端:Java ❀框架:springboot ❀前端页面:vue +element-ui ❀小程序:小程序原生开发 ❀电子班牌:Java Android
36 0
|
5月前
|
小程序 Java 数据库
0002Java安卓程序设计-springboot合同管理APP论文
0002Java安卓程序设计-springboot合同管理APP论文
21 0
|
7月前
|
Android开发
Android 弹窗优先级管理,赶紧拿去用吧
Android 弹窗优先级管理,赶紧拿去用吧
|
10月前
|
小程序 JavaScript 前端开发
基于安卓Android微信小程序的校园报修管理APP
本文论述了校园报修管理小程序的设计和实现,该网站从实际运用的角度出发,运用了计算机网站设计、数据库等相关知识,基于微信小程序和Mysql数据库设计来实现的,网站主要包括用户注册、用户登录、查看通知公告,并进行报修,对维修信息进行评价、缴费等,以及维修工注册、维修工登录,查看报修信息并上门维修等,管理员可以对用户信息、维修工信息、报修、维修等信息进行管理。网站界面进行了人性化的设计,操作简单具有一定的使用价值。任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场进行调研,论文需求进行分析,概要设计,系统详细设计,测试和编码等步骤,设计并实现了疫苗接种预约系统小程序。系统选用B/S
131 0