在视频选择UIImagePickerController期间.控件选择视频并进入压缩屏幕.此时应用程序转到后台.当应用程序唤醒时,压缩被解除并且调用imagepickercontroller:didFinishPickingMediaWithInfo委托方法.甚至在压缩完成之前.
示例代码使用了PhotoPicker
我有一个音频播放器,当接近传感器通知1时,可选择将音频输出从扬声器切换到接收器/听筒(无论是否连接了耳机).以下是我的代码.
- (void) switchAudioOutput:(NSString*)output{
AVAudioSession* audioSession = [AVAudioSession sharedInstance];
BOOL success;
NSError* error;
if([output isEqualToString:keAudioOutputReciever]){
//Force current audio out through reciever
//set the audioSession override
success = [audioSession overrideOutputAudioPort:AVAudioSessionPortOverrideNone
error:&error];
if (!success)
NSLog(@"AVAudioSession error overrideOutputAudioPort:%@",error);
//activate the audio session
success = [audioSession setActive:YES error:&error];
if (!success)
NSLog(@"AVAudioSession error activating: %@",error);
else
NSLog(@"AVAudioSession active with override: AVAudioSessionPortOverrideNone");
}else if([output isEqualToString:keAudioOutputSpeaker]){
//set the audioSession override
success = [audioSession overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker
error:&error];
if (!success)
NSLog(@"AVAudioSession error overrideOutputAudioPort:%@",error);
//activate the audio session
success = [audioSession …Run Code Online (Sandbox Code Playgroud) 我正在使用UIImagePickerController来记录,编辑和保存视频到文件.在关闭UIImagePickerController时,状态栏闪烁红色并消失.我想避免这种情况.我一直在注意到iOS8.1,iOS8,iOS7.1等频率的降低
- (void) cameraClicked{
self.recordState=KRERecordStateRecording;
UIImagePickerController *pickerController = [[UIImagePickerController alloc] init];
pickerController.delegate = self;
pickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
if(self.mediaType==MediaTypePhoto){
pickerController.mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeImage, nil];
}else if(self.mediaType==MediaTypeVideo){
pickerController.mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeMovie, nil];
pickerController.allowsEditing = YES;
pickerController.videoMaximumDuration=30.0f;
}
[self presentViewController:pickerController animated:YES completion:nil];
}
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo{
}
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info{
[picker dismissViewControllerAnimated:YES completion:nil];
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
if (CFStringCompare ((CFStringRef) mediaType, kUTTypeImage, 0)
== kCFCompareEqualTo) {
self.selectedMedia …Run Code Online (Sandbox Code Playgroud)