- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想知道是否有 monotuch 的工作示例显示了接收远程控制事件(例如来自耳机按钮的事件)的工作示例。
我已经实现了一个单 View iphone 应用程序,实现了 CanBecomeFirstResponder,称为 BecomeFirstResponder 以及 UIApplication.SharedApplication.BeginReceivingRemoteControlEvents() 但我没有收到任何事件。
这是我的 SingleViewController 代码。
public partial class SingleViewViewController : UIViewController
{
public SingleViewViewController () : base ("SingleViewViewController", null)
{
}
public override void DidReceiveMemoryWarning ()
{
// Releases the view if it doesn't have a superview.
base.DidReceiveMemoryWarning ();
// Release any cached data, images, etc that aren't in use.
}
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
// Perform any additional setup after loading the view, typically from a nib.
AVAudioSession audioSession = AVAudioSession.SharedInstance();
NSError error;
audioSession.SetCategory(AVAudioSession.CategoryPlayback, out error);
audioSession.SetActive(true,out error);
this.BecomeFirstResponder();
UIApplication.SharedApplication.BeginReceivingRemoteControlEvents();
}
public override void ViewDidUnload ()
{
base.ViewDidUnload ();
// Clear any references to subviews of the main view in order to
// allow the Garbage Collector to collect them sooner.
//
// e.g. myOutlet.Dispose (); myOutlet = null;
ReleaseDesignerOutlets ();
}
public override bool ShouldAutorotateToInterfaceOrientation (UIInterfaceOrientation toInterfaceOrientation)
{
// Return true for supported orientations
return (toInterfaceOrientation != UIInterfaceOrientation.PortraitUpsideDown);
}
public override bool CanBecomeFirstResponder {
get {
return true;
}
}
public override bool CanResignFirstResponder {
get {
return false;
}
}
public override void RemoteControlReceived (UIEvent theEvent)
{
base.RemoteControlReceived (theEvent);
}
}
最佳答案
我在这方面花了一点时间,我想我可能会给你答案。我的第一个错误假设是 Remote (耳机)上的音量增大和减小控件会注册,但它们不会。
除了通过反复试验,我还没有设法确认以下内容,但看起来您需要让 AVAudioPlayer 播放一些东西,或者至少在您启动 AVAudioSession 时播放一些东西。在不播放任何内容的情况下,播放/停止事件将传递给处理它的音乐应用程序。
在您的代码中,在调用 base 之后的 ViewDidLoad 方法中,我添加了
AVAudioPlayer player = new AVAudioPlayer(new NSUrl("Music/test.m4a", false), null);
player.PrepareToPlay();
player.Play();
如果您在 GitHub 上查看这些示例的第 27 章,您将看到一个播放音频和处理远程控制事件的示例。
https://github.com/mattneub/Programming-iOS-Book-Examples
我无法在没有播放器播放的情况下使远程控制事件正常工作,您的示例与许多 Obj-C 样本相匹配,但我也无法在 Xcode 中使其正常工作。
希望这对您有所帮助。
关于ios - 单点触控远程控制事件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12328002/
嘿。 我在使用 Selenium Remote control 运行 selenium 测试时遇到问题。 打开控制台窗口并键入以下命令后: java -jar selenium-server-stan
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 10 个月前关闭。 Improve this
在 reveal.js Github 中,有一种方法可以使用触摸设备激活演示文稿的远程控制,而无需使用第三方脚本。 这是: Reveal.initialize({ dependencies:
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 5 年前。 Improve this ques
我每天 24 小时在专用机器上运行 VB.NET 应用程序。我希望能够接收状态更新并远程控制/调试应用程序(即通过互联网从另一台计算机)。 如果通信是轻量级的(就发送和接收的字节而言),那将是一个优势
这是一个将在 8 小时内上交的项目!我们被这个问题困扰,并认为这个地方是最后的手段。 我正在尝试使用 Arduino 打开/关闭远程控制 socket 。这样做时我们会遇到不一致的情况。有时,当它进入
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this q
我想在我的房间手册中远程控制 socket ,而无需在我的树莓派上安装额外的库。我想在 C 中使用 UART 接口(interface)。 socket 有 433 Mhz 接收器,我使用 433 M
我正在尝试从 C# 控制 VLC 媒体播放器。我尝试使用 .Net 中的 FindWindow() 命令获取窗口句柄,但我发现每次播放文件时窗口名称都会更改。我遇到的最大问题是将 wm_command
我一直很高兴地将 XPath 与 Selenium 一起使用,甚至将 getEval 与 Javascript 一起使用,但一位同事说,如果能够在 Selenium 中使用 JQuery 选择器不是很
过去,Netscape 有一项功能,允许您从命令行远程控制浏览器 session (使用“-remote”标志)。我正在寻找类似的功能,但在现代浏览器中。 Mplayer 的 slave mode 是
我正在尝试控制安装在远程计算机上的 Windows 服务。我正在使用 ServiceController 类。 我有这个: ServiceController svc = new ServiceCo
这是我第一次在这里发帖。 我正在做一个项目,我想通过不同的输入模式(例如多点触控、3D 鼠标...)来控制 Windows Media Player。目前,我正试图找到一种远程控制 Windows M
我们在屏蔽箱里用手机做实验。 无法进行无线/ radio 通信,因此我们需要使用 USB 电缆。 “androidscreencast”非常适合通过 USB 远程控制 android 设备。 现在有必
启用 WinRM 远程服务: winrm quickconfig 查看 WinRM 服务监听状态: winrm e winrm/config/listener
我正在寻找一个 Emacs (& Chrome) 包,它可以 每个应用程序之间的通信——尤其是从 Emacs 远程控制 Chrome,类似于 Mozrepl对于火狐。 我找到了一个名为 skewer-
Selenium Remote Control 有一个“get_html_source”方法,它以字符串形式返回当前页面的源。 据我所知,此方法适用于 Firefox 和 Safari 中的所有情况。
我需要创建某种可以与 UPnP 媒体服务器交互的 Remote 。 我读到过 UPnP AV 堆栈有类似三种应用程序:媒体服务器、媒体渲染器和控制点。起初,我认为控制点是我想要编程的,但是,在浏览了几
我正在尝试找到一种工具来从 Windows 7 机器远程控制运行 Windows CE 6.0 的摩托罗拉 MC3190 设备。 我已经将 Mymobiler 与 Intermec CN3 设备一起使
我是一名优秀的程序员,十分优秀!