调用系统震动和声音

一直以为设置软件的震动或声音是一件很复杂的事情。今天研究了一下,还可以,不算是特别的复杂。

其中,软件的震动和声音,有没有震动,有没有声音,是完全和苹果手机的设置一样的。这个不用纠结。

关于系统的声音:

1.声音格式是MP3或m4r的需要转成caf格式(可先转成aif , aiff,然后修改后缀)
2.路径在/System/Library/Audio/UISounds 里,需要更改的可以根据以下列表进行替换
3详细列表:
信息 
ReceivedMessage.caf--收到信息,仅在短信界面打开时播放。 
sms-received1.caf-------三全音 
sms-received2.caf-------管钟琴 
sms-received3.caf-------玻璃 
sms-received4.caf-------圆号 
sms-received5.caf-------铃声 
sms-received6.caf-------电子乐 
SentMessage.caf--------发送信息

邮件 
mail-sent.caf----发送邮件 
new-mail.caf-----收到新邮件

电话 
dtmf-0.caf----------拨号面板0按键 
dtmf-1.caf----------拨号面板1按键 
dtmf-2.caf----------拨号面板2按键 
dtmf-3.caf----------拨号面板3按键 
dtmf-4.caf----------拨号面板4按键 
dtmf-5.caf----------拨号面板5按键 
dtmf-6.caf----------拨号面板6按键 
dtmf-7.caf----------拨号面板7按键 
dtmf-8.caf----------拨号面板8按键 
dtmf-9.caf----------拨号面板9按键 
dtmf-pound.caf---拨号面板#按键 
dtmf-star.caf------拨号面板*按键 
Voicemail.caf-----新语音邮件

输入设备声音提示 
Tock.caf-----------------------点击键盘 
begin_record.caf-----------开始录音 
begin_video_record.caf--开始录像 
photoShutter.caf------------快门声 
end_record.caf--------------结束录音 
end_video_record.caf-----结束录像

其他 
beep-beep.caf--充电、注销及连接电脑 
lock.caf------------锁定手机 
shake.caf---------“这个还没搞清楚” 
unlock.caf--------滑动解锁 
low_power.caf--低电量提示

语音控制 
jbl_ambiguous.caf--找到多个匹配 
jbl_begin.caf------等待用户的输入 
jbl_cancel.caf-----取消 
jbl_confirm.caf----执行 
jbl_no_match.caf---没有找到匹配

日历 
alarm.caf--日历提醒

iPod Touch 1G 
sq_alarm.caf 
sq_beep-beep.caf 
sq_lock.caf 
sq_tock.caf

未使用的系统声音 
ussd.caf 
short_double_high.caf 
short_double_low.caf 
short_low_high.caf 
middle_9_short_double_low.caf 
long_low_short_high.caf 
RingerChanged.caf 
SIMToolkitCallDropped.caf 
SIMToolkitGeneralBeep.caf 
SIMToolkitNegativeACK.caf 
SIMToolkitPositiveACK.caf 
SIMToolkitSMS.caf 
ct-busy.caf 
ct-call-waiting.caf 
ct-congestion.caf 
ct-error.caf 
ct-keytone2.caf 
ct-path-ack.caf 
Tink.caf

感谢http://bbs.feng.com/read-htm-tid-6262661.html

好了上代码:

#import <AudioToolbox/AudioToolbox.h>

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.title=@"RootViewController";

    //这个震动不震动,有没有声音是和手机的设置一样的。

    //调用系统震动
    [self getChatMessageGoToShake];
    //调用系统声音
    [self getChatMessageGoToSound];
}

#pragma  -mark -调用系统震动
- (void)getChatMessageGoToShake
{
     //调用系统震动
     AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

}

#pragma -mark -调用系统声音
- (void)getChatMessageGoToSound
{
    //调用系统声音
    NSString *path = [NSString stringWithFormat:@"/System/Library/Audio/UISounds/%@.%@",@"sms-received3",@"caf"];
    if (path) {
        SystemSoundID sd;
        OSStatus error = AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:path],&sd);
        //获取声音的时候出现错误
        if (error != kAudioServicesNoError) {
            NSLog(@"----调用系统声音出错----");
            sd = 0;
        }
        AudioServicesPlaySystemSound(sd);
    }
}

调用系统震动和声音,布布扣,bubuko.com

时间: 2024-08-10 19:19:13

调用系统震动和声音的相关文章

【代码笔记】调用系统震动和声音

代码: RootViewController.m #import "RootViewController.h" #import <AudioToolbox/AudioToolbox.h> @interface RootViewController () @end @implementation RootViewController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBun

调用系统震动 循环震动

1.需要引入#import <AVFoundation/AVFoundation.h>头文件, 2.在需要播放的地方添加: AudioServicesAddSystemSoundCompletion(kSystemSoundID_Vibrate, NULL, NULL, systemAudioCallback, NULL); AudioServicesPlaySystemSound(kSystemSoundID_Vibrate); 解释:kSystemSoundID_Vibrate为系统提供的

iOS调用系统声音和震动

调取系统声音和震动 首先应当引入系统库:AudioToolbox.framework 引用: #import <AudioToolbox/AudioToolbox.h> 1.调用震动: AudioServicesPlaySystemSound(kSystemSoundID_Vibrate); 2,调用系统声音 a.直接调用 AudioServicesPlaySystemSound(1007);//这个声音是是类似于QQ声音的 b.调用更多的系统声音 SystemSoundID sound; N

实现android按键震动按键声音的机制

按键的时候想要调用系统的震动服务,首先得再AndroidMainfest.xml里面加上相应的权限 <uses-permission android:name="android.permission.VIBRATE" /> 然后就是 Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); //  vibrator.vibrate(3000); // 设置Vibrate的震动周期 vibrator.

Android 打电话,发短信,调用系统浏览器

打电话: Intent intent = new Intent(Intent.ACTION_DIAL); intent.setData(Uri.parse("tel:10086")); startActivity(intent); 发短信: SmsManager smsManager=SmsManager.getDefault();//取得短信管理器 /**发简单的文本信息 * destinationAddress: 目标地址,发给谁 * scAddress: 来源的地址,谁发的 *

Android调用系统相机拍照保存照片很小解决方案

保存图片小的一般操作步骤: 1. 调用系统相机 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 1); 2. 保存照片 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {  // TODO Auto-generated method s

PB调用系统自带的DLL 实现MD5

适用环境:powerbuilder 10.0以后的版本  window server2003以后的测试可用 PB也可以调用系统自带的DLL 实现MD5 其中md5file对大附件的处理速度也比第三方组件快一些 这里可以去下载附件 //调用样例: u_derek_md5 lu_md5 lu_md5=create u_derek_md5 string ls_text="123" string ls_result,ls_ret string ls_filepath="C:\1.tx

小米手机调用系统截图挂掉问题

调试系统切图 用户修改头像,当用户选择相册图片,然后调用系统切图工具后 小米手机直接退出程序,测试 MX 三星 都没问题 以下代码最关键地方 intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.parse(imagePath)); intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); public static void startPhotoZoom(Cont

Android图片系列(1)-------调用系统相册与相机获取图片

Android开发过程中,我们经常需要获取图片,你可以通过获取手机相册的图片,也可以调用相机拍照获取图片.这里主要讲这两个获取图片的方式,并记录其中遇到的小问题. 调用相册获取图片 这个功能非常简单,这里不多说了,这里贴出关键代码 Intent openAlbumIntent = new Intent(Intent.ACTION_GET_CONTENT); openAlbumIntent.setType("image/*"); startActivityForResult(openAl