/*使用OC的AVFoundataion播放本地音乐
*掌握AVAudioPlayer用于播放音频文件
*掌握本地音乐播放时的音量与速度的控制
*/
步骤
1导入AVFoundataion头文件
2初始化AVAudioPlayer用于播放音频文件
3播放、停止、暂时播放音频文件,"停止时,音频播放的位置应该回到最初状态"
4设置音频的播放进度'currentTime'
5设置音频的播放速度'rate',"设置速度前一定要设置AVAudioPlayer的enableRate属性
6设置音频的播放次数numberOfLoops,//0代表一次,1代表两次,以此类推
7设置AVAudioPlayer的代理方法,eg.结束、开始中断、结束中断
8在ios8中使用通知来监听音频播放的中断
NSNotificationCenter center = [NSNotificationCenter defaultCenter] AVAudioSession *session = [AVAudioSession sharedInstance];
[center addObserver: self selector:@selector(handleInterruption:) name:
AVAudioSessionInterruptionNotification object: session];
录音
/*
* 实现录音,只需要使用AVFoundation的AVAudioRecorder即可
*/
步骤
1实现界面排版,录音按钮要实现三个事件的监听TouchDown/TouchUpInside/TouchUpOutSide 2初始化录音器AVAudioRecorder
•设置文件保存路径
•设置录音配置
/*
//音频编码格式
settings[AVFormatIDKey] = @(kAudioFormatAppleIMA4); //音频采样频率
settings[AVSampleRateKey] = @(8000.0);
//音频频道
settings[AVNumberOfChannelsKey] = @(1); //音频线性音频的位深度 settings[AVLinearPCMBitDepthKey] = @(8);
*/
3准备录音,录音前要做些准备工作 4开始录音
5结束录音 6录音时间太短,使用AVAudioPlayer获取录音
7刷新表格
8播放录音
"怎么把应用程序打包成一个ipa"
回顾真机调用的步骤
1.装一个开发者证书,让电脑具有真机调式的功能
2.在后台,生成一个bundle ID
3.在后台添加手机的UUID
4.生成一个描述文件
打包应用程序(testaa)
1.装一个证书,打包的证书
2.生成一个bundle ID('cn.itcast.testaa')
3.添加手机UUID(客户必须给我们手机UUID)
4.生成一个描述文件
•在xcode里打包应用程序的时候,输入帐号,xcode会自动帮你生成描述文件
5.利用xcode打包应用程序
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if([UIDevice currentDevice].systemVersion.doubleValue >= 8.0 ){
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[application registerUserNotificationSettings:settings];
[application registerForRemoteNotifications];
}else{
[application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound];
}
if (launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey]) {
//
}
return YES;
}
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
NSLog(@"%@",deviceToken.description);
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
NSLog(@"%@",userInfo);
}