所以我的主要问题是我不太确定如何继续向Cordova的控制器初始化添加一些代码.我不确定有几件事:
1)我错过了一个明显的设置让科尔多瓦为我做这件事吗?我看到Media插件做了类似的事情,但找不到类似于视频的东西.
2)我的临时解决方法/概念证明涉及修改Cordova控制器的“viewDidLoad”处理程序上的AudioSession类别.我在正确的位置修改控制器代码吗?这样做会破坏已经存在的会话吗?
2)如果从Obj-C / ios应用程序初始化的角度来看我的当前代码是正常的,我如何将它与Cordova集成,以便我们可以使用它构建一个新的Cordova项目(因为这是我们构建过程的一部分)?如果我将代码包装到插件中,“pluginInitialize”是否适合执行它?
我没有太多的Objective-C / iOS本机体验,所以如果这主要是知道正确的事情来搜索/或理解应用程序初始化答案,那么这个效果也将受到赞赏!
编辑:正在使用的Cordova版本是3.5.0-0.2.7
目前的代码
这是我卡在Cordova视图控制器中的代码:
我假设Cordova的WebView使用Apple默认音频设置(apple docs)进行视频播放:
AVAudioSessionCategoryAmbient
The category for an app in which sound playback is nonprimary—that is,your app can be used successfully with the sound turned off.
我假设我想使用AVAudioSessionCategoryPlayback设置.
我编辑了主要的Cordova视图控制器:
‘[project/ios-build]/CordovaLib/Classes/CDVViewController.m’
将此片段从another answer放入“viewDidLoad”处理程序:
AVAudioSession *audioSession = [AVAudioSession sharedInstance]; BOOL ok; NSError *setCategoryError = nil; ok = [audioSession setCategory:AVAudioSessionCategoryPlayback error:&setCategoryError]; if (!ok) { NSLog(@"%s setCategoryError=%@",__PRETTY_FUNCTION__,setCategoryError); }
然后,我们的视频播放音频时铃声成功静音,但是,如上所述,我想了解如何将此代码与Cordova集成,而不是就地编辑.