Android手机铃声代码实现

Android简易手机铃声功能实现 在Android Studio中,选择"File"(文件)菜单,然后选择"New"(新建)> “New Project”(新建项目)。在弹出的对话框中,输入项目名称和其他必要的信息,并选择合适的目标设备和最低支持的Android版本。当点击"播放铃声"按钮时,铃声将开始播放,按钮文本变为"暂停铃声";再次点击按钮时,铃声将暂停播放,按钮文本变为"播放铃声"。通过创建一个按钮并添加相应的点击事件监听器,我们可以控制铃声的播放和暂停。创建完项目后,我们需要在布局文件中添加一个按钮,用于触发铃声播放功能。 阅读详情

网上查了很多例子,都有点问题,综合几个自己写了个可以设置铃声、通知声音、闹钟声音和所有声音功能的方法。

首先写一个常量类(定义想要设置为那种铃声的标示):

AppConstant.java

public interface AppConstant {

   

    public static final int RINGTONE = 0;                   //铃声

    public static final int NOTIFICATION = 1;               //通知音

    public static final int ALARM = 2;                      //闹钟

    public static final int ALL = 3;                        //所有声音

}

 

此方法需要传入想要设置为铃声的全路径(如:/mnt/sdcard/mp3/a.mp3 ),和想要设置为那种铃声的标示:

private void setVoice(String path2,int id)

    {

       ContentValues cv = new ContentValues();

       Uri newUri = null;

       Uri uri = MediaStore.Audio.Media.getContentUriForPath(path2);

       // 查询音乐文件在媒体库是否存在

       Cursor cursor = this.getContentResolver().query(uri, null, MediaStore.MediaColumns.DATA + "=?", new String[] { path2 },null);

       if (cursor.moveToFirst() && cursor.getCount() > 0)

       {

           String _id = cursor.getString(0);

           switch (id) {

              case AppConstant.RINGTONE:

                  cv.put(MediaStore.Audio.Media.IS_RINGTONE, true);

                  cv.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);

                  cv.put(MediaStore.Audio.Media.IS_ALARM, false);

                  cv.put(MediaStore.Audio.Media.IS_MUSIC, false);

                  break;

              case AppConstant.NOTIFICATION:

                  cv.put(MediaStore.Audio.Media.IS_RINGTONE, false);

                  cv.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);

                  cv.put(MediaStore.Audio.Media.IS_ALARM, false);

                  cv.put(MediaStore.Audio.Media.IS_MUSIC, false);

                  break;

              case AppConstant.ALARM:

                  cv.put(MediaStore.Audio.Media.IS_RINGTONE, false);

                  cv.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);

                  cv.put(MediaStore.Audio.Media.IS_ALARM, true);

                  cv.put(MediaStore.Audio.Media.IS_MUSIC, false);

                  break;

              case AppConstant.ALL:

                  cv.put(MediaStore.Audio.Media.IS_RINGTONE, true);

                  cv.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);

                  cv.put(MediaStore.Audio.Media.IS_ALARM, true);

                  cv.put(MediaStore.Audio.Media.IS_MUSIC, false);

                  break;

   

              default:

                  break;

           }

          

           // 把需要设为铃声的歌曲更新铃声库

           getContentResolver().update(uri, cv, MediaStore.MediaColumns.DATA + "=?",newString[] { path2 });

           newUri = ContentUris.withAppendedId(uri, Long.valueOf(_id));

          

         // 一下为关键代码:

           switch (id) {

              case AppConstant.RINGTONE:

                  RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri);

                  break;

              case AppConstant.NOTIFICATION:

                  RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION, newUri);

                  break;

              case AppConstant.ALARM:

                 RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM, newUri);

                  break;

              case AppConstant.ALL:

                  RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALL, newUri);

                  break;

   

              default:

                  break;

           }

          

           //播放铃声

//         Ringtone rt = RingtoneManager.getRingtone(this, newUri);

//         rt.play();

       }

    }

Android操作铃声、震动与传感器的代码例子 Android操作铃声、震动与传感器的代码例子。用于演示铃声的情景设置、震动器的使用、传感器的使用(即微信的摇一摇)等等功能。 立即下载

相关推荐

Android设置铃声实现代码

主要介绍了Android设置铃声实现代码,以实例形式分析了Android中铃声设置的相关技巧,非常简单实用,需要的朋友可以参考下

Android 响铃与震动模式的

今天我们来说一下Android中的响铃与震动的用法,首先震动需要权限: 我们直接看响铃代码 MediaPlayer mp = new MediaPlayer(); mp.setDataSource(this, RingtoneManager .getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));//这里我用的

will_han 的专栏 4581

Android编程实现震动与振铃的方法详解

主要介绍了Android编程实现震动与振铃的方法,结合实例形式分析了Android实现震动与振铃的Vibrator类及MediaPlayer类相关使用技巧,需要的朋友可以参考下

Android 一个简单手机响铃功能实现

当有新通知到达时,常常以响铃方式提醒用户。这里主要讲怎么通过简单的代码来播放系统默认的铃声。请参阅下面的关键代码: import java.util.Random; import android.app.Notification; import android.app.NotificationManager; import android.app.Service; import androi

心灵净土 1万+

【胡学长 带你学 Global Mapper 】如何将影像地图转换为国家2000坐标系

多部门联合开展工作坐标数据不匹配怎么办?Hi,我是胡学长!今天教大家如何利用Global Mapper将谷歌影像数据转换为国家2000坐标系影像数据 。

一起来交流学习吧 1万+

AltiumDesigner 09安装过程破解问题 .

首先分享一下破解文件,网上总是下载不到,好不容易下载到了,放在网盘上,有需要的自取。AltiumDesigner 09破解文件。链接:https://pan.baidu.com/s/1ZGvbR_6T51hpcaFbQiMX5w 密码:qwvaAltiumDesigner 09安装安装文件,比较大,包含破解文件:链接:https://pan.baidu.com/s/1mfgragB519jpGfR...

xiaoxiao_rabbit的博客 3万+

Android开发之手机铃声代码实现

如果读到的是音频文件路径,需要先将音乐文件插入到多媒体库。如:path传入:/mnt/sdcard/mp3/a.mp3 //设置--铃声的具体方法      public void setMyRingtone(String path)      {         File sdfile = new File(path);        ContentValues values = new Co

我的博客 2756

产品经理必看!用Cursor自动生成符合开发规范的技术文档(含UI设计规则模板)

本文详细介绍了产品经理如何利用Cursor工具自动生成符合开发规范的技术文档,并整合UI设计规则模板。通过配置标准化文档结构和设计关联规则,Cursor能有效解决术语不统一、结构混乱等问题,提升跨团队协作效率。文章包含实际案例、规则配置要点及企业级实施方案,帮助产品经理快速掌握AI辅助文档生成技巧。

emacs5lisp的博客 224

android 自定义铃声 代码,Android通过代码设置铃声

对安卓手机进行铃声操作,设置默认铃声、删除当前默认铃声、更改铃声以默认振铃为例子,通过代码设置手机铃声设置默认振铃// 将铃声的路径插入contentResolver,以数据库的形式插入/*** 设置默认振铃* @param musicInfo 歌曲信息* @param ringtoneFile 振铃文件,包含绝对路径*/private void setRingtoneImpl(MusicInfo...

weixin_31859675的博客 618

晶圆测试(Wafer Sort)的核心技术与良率提升策略

晶圆测试(Wafer Sort)是芯片制造中的关键“入学考试”,通过探针台与自动测试设备(ATE)对晶圆上的芯片进行功能与参数测试,筛选不合格芯片以控制成本。本文深入解析了其核心技术,包括自动化视觉系统对准、测试流程优化策略,并探讨如何利用测试数据驱动良率提升,展望了DFT与AI智能测试的未来趋势。

e4f5g6h的博客 517

自抗扰控制(ADRC)理论与工程实践:6.1 离散时间ADRC的推导

本文系统阐述了自抗扰控制(ADRC)的离散化方法,重点对比了前向欧拉法和基于零阶保持器(ZOH)的精确离散化两种方法。前向欧拉法计算简单但精度较低,稳定性受采样周期约束;ZOH法精度高但对大采样周期更鲁棒。文章详细推导了跟踪微分器、扩张状态观测器和控制律的离散形式,分析了采样周期选择的关键因素,为ADRC的数字实现提供了理论指导。

技术工作者 197

Android中手机声音调节步骤

Android中手机声音调节步骤: a、通过系统服务获得声音管理器: AudioManager audioManager =  (AudioManager)getSystemService(Service.AUDIO_SERVICE); b、根据实际需要调用适当的方法:(常用方法) audioManager.adjustStreamVolume(int streamType, int  d

人丑多读书 1403

Python从0到100(一):初识Python及安装Pycharm

Python从0到100(一):初识Python及安装Pycharm。Python是由荷兰人吉多·范罗苏姆(Guido von Rossum)发明的一种编程语言,是目前世界上最受欢迎和拥有最多用户群体的编程语言。

拥有百余位万粉技术博主、200余位可合作代发博主,私域技术社群规模达千人,商务合作私信 8万+

android 设置来电铃声

亲测可用(记得加权限)      /*   *   设置铃声   */  public static void setMyAlarm(Context ct,String path)  {    File sdfile = new File(path);     Uri uri = MediaStore.Audio.Media.getContentUriForPath(sdfi

凡夫俗子 739

基于LLM的电商数据分析系统

随着电商行业的蓬勃发展,每天都会产生海量的数据,这些数据包含了用户的行为信息、商品信息、销售数据等。如何从这些繁杂的数据中提取有价值的信息,为电商企业的决策提供支持,成为了一个关键问题。基于LLM的电商数据分析系统的目的就是利用大语言模型强大的自然语言处理和数据分析能力,对电商数据进行深入挖掘和分析,帮助企业了解市场趋势、用户需求、商品销售情况等,从而制定更加合理的营销策略、优化商品库存管理、提升用户体验等。本系统的范围涵盖了电商领域的多个方面,包括用户行为分析、商品分析、销售数据分析等。

AI Python 编程之道的博客 808

玩转 InternVL3.5 轻量级实战:从部署到优化的全记录

玩转 InternVL3.5 轻量级实战:从部署到优化的全记录

jacke121的专栏 626

设置铃声

1、权限 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> 2、代码 public void setPhoneMusic() { //设置当前文件存放音乐为手机铃声 Intent intent = new Intent(Ri...

aisanhu9928的博客 171

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

android java 怎么更换默认铃声,Android如何通过长按按钮将声音设置为铃声

如何长按按钮将声音设置为铃声?目前它只适用于sound4但不适用于sound5包com.test.soundboard;import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.Input...

weixin_42126668的博客 244

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

上一篇: Android手机铃声代码实现
下一篇: Android手机铃声代码实现
ehlxr
博客等级 码龄16年 3粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值