IOS开发/iphone开发震动与播放声音Demo
2014-12-29 17:24
567 查看
可能在软件某些时候需要震动手机以示提醒,可能还要播放一段特殊的声音引起用户的注意,在ios中如何实现呢?
首先实现震动,其实就是调用系统的方法,一句话就行,AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);当然前提是要加入AVFoundation.framework这个框架
然后实现播放声音,可能还要循环播放多少次,循环播放用n次,[self.player setNumberOfLoops:n];
因为我播放的声音是mp3,是用AudioToolbox框架,需要加入这个框架
代码如下
ViewController.h文件
#import
#import
#import
@interface ViewController : UIViewController{
AVAudioPlayer *player;
}
@property (retain) AVAudioPlayer *player;
@end
ViewController.m文件
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize player;
- (BOOL) prepAudio
{
NSError *error;
NSString *path = [[NSBundle mainBundle] pathForResource:@"loop" ofType:@"mp3"];
if (![[NSFileManager defaultManager] fileExistsAtPath:path]) return NO;
self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];
if (!self.player)
{
NSLog(@"Error: %@", [error localizedDescription]);
return NO;
}
[self.player prepareToPlay];
[self.player setNumberOfLoops:1];
return YES;
}
- (void)viewDidLoad
{
[self prepAudio];
[self.player play];
AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);
}
@end
下载源代码http://www.kuaipan.cn/file/id_30491149655343777.htm
声音逐渐减小
for (int i = 9; i >= 0; i--)
{
self.player.volume = i / 10.0f;
[NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1f]];
}
[self.player pause];
发生中断时的处理
[[NSUserDefaults standardUserDefaults] setFloat:[self.player currentTime] forKey:@"Interruption"];
首先实现震动,其实就是调用系统的方法,一句话就行,AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);当然前提是要加入AVFoundation.framework这个框架
然后实现播放声音,可能还要循环播放多少次,循环播放用n次,[self.player setNumberOfLoops:n];
因为我播放的声音是mp3,是用AudioToolbox框架,需要加入这个框架
代码如下
ViewController.h文件
#import
#import
#import
@interface ViewController : UIViewController{
AVAudioPlayer *player;
}
@property (retain) AVAudioPlayer *player;
@end
ViewController.m文件
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize player;
- (BOOL) prepAudio
{
NSError *error;
NSString *path = [[NSBundle mainBundle] pathForResource:@"loop" ofType:@"mp3"];
if (![[NSFileManager defaultManager] fileExistsAtPath:path]) return NO;
self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];
if (!self.player)
{
NSLog(@"Error: %@", [error localizedDescription]);
return NO;
}
[self.player prepareToPlay];
[self.player setNumberOfLoops:1];
return YES;
}
- (void)viewDidLoad
{
[self prepAudio];
[self.player play];
AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);
}
@end
下载源代码http://www.kuaipan.cn/file/id_30491149655343777.htm
声音逐渐减小
for (int i = 9; i >= 0; i--)
{
self.player.volume = i / 10.0f;
[NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1f]];
}
[self.player pause];
发生中断时的处理
[[NSUserDefaults standardUserDefaults] setFloat:[self.player currentTime] forKey:@"Interruption"];
相关文章推荐
- iOS开发笔记--iphone开发震动与播放声音Demo
- IOS开发/iphone开发震动与播放声音Demo
- iOS开发笔记--iphone开发震动与播放声音Demo
- iOS开发笔记--iphone开发震动与播放声音Demo
- IOS开发/iphone开发震动与播放声音Demo
- IOS开发/iphone开发震动与播放声音
- iOS开发 ( iPhone/iPad):利用ffmpeg 实现音频解码、声音播放
- ios 编程: ipad 和 iphone开发中使用 UIWebView 来播放视频的时候,在页面切换时 停止播放
- 关于ios里的摇一摇以及播放声音和震动
- demo for iphone苹果官方例子ios开发
- 在ios开发中,有时候我们需要 频繁 播放某种提示声音
- demo for iphone苹果官方例子ios开发
- iPhone/iPad高级应用与手游开发学习笔记:AVAudioPlayer学习(音频播放demo)
- iPhone开发播放音乐与按钮声音
- iOS 播放声音和震动
- iOS开发--播放系统注册声音
- 【iOS-Cocos2d游戏开发之十四】音频/音效/视频播放(利用Cocos2D-iPhone-Extensions嵌入Cocos2d进行视频播放!)
- iphone开发 播放短声音
- 【iOS-Cocos2d游戏开发之十四】音频/音效/视频播放(利用Cocos2D-iPhone-Extensions嵌入Cocos2d进行视频播放!)
- IOS开发:多媒体-音频的操作(一) 短声音的播放