小编Mik*_*ord的帖子

如何沉默iPhone相机快门声?

我可以通过调用[UIImagePickerController takePicture:]以编程方式用iPhone拍照,但是当我这样做时,iPhone会播放快门点击的大声录音.当我谷歌关于如何关闭点击时,我找到建议重命名iPhone播放的声音文件.在我看来,我的应用程序会这样做会导致它被App Store拒绝访问系统框架.是否有一种程序化的方式来关闭这种声音?我的应用程序的性质要求相机保持沉默.

iphone audio camera shutter

13
推荐指数
2
解决办法
3万
查看次数

如何在 OS X 内核中实现带超时的递归互斥锁?

我正在将 Windows 设备驱动程序移植到 Mac OS X。Windows 代码使用 KMUTEX。这是一个递归锁,同一线程可以多次获取。其他线程必须等待才能获取,但如果超时则获取失败。

I/O Kit 的 IORecursiveLock 不执行超时操作。我可以使用 BSD 锁或 Mach 锁。内核的 BSD 部分通过 msleep() 和wakeup() 提供条件变量。

我不清楚条件变量是否能达到我想要的效果。

BSD 上的 sem_timedwait(3) 位于用户空间中。

Keith Shortridge 提供了一个用户空间 set_timedwait 实现。一个线程调用 sem_wait(),而另一个线程在发生超时时向第一个线程发送信号。

我可以将 Shortridge 的代码移植到内核,但我不想冒把它搞砸的风险。谷歌没有提供其他见解。你能给我一个线索吗?

macos multithreading mutex timeout driver

5
推荐指数
1
解决办法
398
查看次数

什么是 CFErrorDomainLaunchd 错误 2?

我在任何标题中都找不到 CFErrorDomainLaunchd。我使用 find 命令来 grep 10.11 SDK 中的每个头文件。

我也试过谷歌:

site:opensource.apple.com CFErrorDomainLaunchd
Run Code Online (Sandbox Code Playgroud)

当我尝试安装我的助手应用程序及其启动 plist 时,SMJobBless 将错误传回。

我很困惑,因为昨天的安装工作得很好。我在此决定比现在更频繁地检查我的代码。

Boolean             success;
CFErrorRef          error;

success = SMJobBless(
    kSMDomainSystemLaunchd,
    CFSTR("com.frescologic.FL2000.Uninstaller.UninstallerHelper"),
    self->_authRef,
    &error );     <-- This is CFErrorDomainLaunchd error 2
Run Code Online (Sandbox Code Playgroud)

我永远欠你的债。

我正在开发 - 或试图开发 - 驱动程序的卸载程序。它还将卸载用户空间程序以及 OS X 用于启动或停止该用户空间程序的 LaunchAgent plist。

macos drivers launchd

5
推荐指数
1
解决办法
2393
查看次数

如何在Xcode 9中删除目标?

Xcode 9与Xcode 8非常相似.

我正在构建Apple的开源IOGraphicsFamily.

在Products组中有一个名为iogdiagnose的目标.当我尝试构建所有目标时,它的源产生了许多编译器错误,所以我从我的项目中删除了带有iogdiagnose源代码的组.

但是,目标仍在那里.它产生一个链接错误 - 缺少主要.

谷歌未能提供洞察力.对于Xcode 6.1存在相同的问题,但Xcode 9与6.1完全不同.

构建IOGraphicsFamily驱动程序堆栈是一个巨大的PITA.我需要自己的构建,所以我可以启用驱动程序堆栈的kprintf日志记录.

xcode

3
推荐指数
2
解决办法
2979
查看次数

标签 统计

macos ×2

audio ×1

camera ×1

driver ×1

drivers ×1

iphone ×1

launchd ×1

multithreading ×1

mutex ×1

shutter ×1

timeout ×1

xcode ×1