标签: iokit

iOS中的私有唯一设备标识符

我们正与同事一起开展一个项目,涉及使用大量私有和非官方代码.这不适用于AppStore.

我们的第一个也是唯一的要求是使用越狱.

首先,UDID或者OpenUDID或者任何其他解决方案在这里不起作用,并且它们不被期望.

我们已经做了很多背景研究和测试,从尝试以编程方式获取IMEI,ICCID,IMSI和序列号开始.如果没有越狱,上述方法都不适用于iOS 7及更高版本.

我们还花了几个月的时间IOKit使用着名的IOKitBrowser来使用框架并抛弃iOS内部的全部内容.不幸的是,我们发现随着iOS 8.3它停止工作.

我们在这里谈的不是关于获得UDID或任何其他"主流"的东西,但一般来说我们需要一种方法来获得

任何永久性硬件标识符,其唯一性足以识别在设备擦除和不同iOS版本之间仍然存在的设备

这个问题与其他人没有重复(例如,这里没有找到解决方案),并且仅针对私有API.

任何帮助将受到高度赞赏.

iphone cocoa-touch iokit iphone-privateapi ios

32
推荐指数
2
解决办法
6815
查看次数

找不到IOKit

所以一切都很好,然后我决定开始在XCode 5 DP3和iOS7上进行开发

在升级之前,我的项目编译并在我的iPhone 3GS上运行良好(我做了一个小软电话应用程序); 然而,它并没有在我的iPhone 5上运行; 我非常有信心,我还没有将它配置为包含armv7s架构.

我可以在模拟器上构建和运行一切,但是(这是在配置应用程序以包含armv7s架构之后)我无法让它在我的设备上运行.

我收到此错误:

ld: framework not found IOKit
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我甚至不确定如何使用-v来查看调用.我读了一些IOKit仅用于模拟器的地方......这是否意味着我应该在我的设备上构建时将其与我的库取消链接?为什么我在使用我的3gs之前没有得到这个错误?

我为什么它不再适用于我的3gs(虽然错误是相同的)的假设是,它是iOS 6,而SDK可能只支持iOS 7(我的iPhone 5目前是).

xcode iokit ios7 xcode5

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

什么是com.apple.Dont_Steal_Mac_OS_X

com.apple.Dont_Steal_Mac_OS_X是一个IOResources提供商......

类继承:Dont_Steal_Mac_OS_X:IOService:IORegistryEntry:OSObject

它是如何工作的?

它有什么作用?

macos iokit copy-protection

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

我在哪里可以系统地学习如何编写Mac OS X设备驱动程序?

我正在寻找一本详尽的大学级书籍或学习指南,以便能够编写Mac OS X设备驱动程序.我对这个操作系统完全无知,但我已经熟练使用Linux了.

书籍"Linux设备驱动程序"是否有任何Mac OS X版本?

最佳指南也应该引入OS内部,明确内核空间和用户空间差异等.

提前致谢

documentation macos iokit device-driver

18
推荐指数
2
解决办法
1万
查看次数

如何创建程序列出Mac中的所有USB设备?

我对Mac OS X操作系统的了解有限,现在我开始使用Xcode并正在研究I/O工具包.我需要在命令行工具下在Xcode中创建一个程序,以便列出Mac系统中连接的所有USB设备.那些以前有过这方面经验的人,请帮助我.如果有人能为我提供示例代码,那么它将非常有用,因为我正在寻找起点.

c++ macos xcode iokit

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

将CFString转换为NSString - Swift

我正在尝试编写一个程序来扫描可用的串行端口并在弹出菜单中显示它们.为什么我不能CFStringIORegistryEntryCreateCFProperty()函数中取直接并在下一行通过字符串插值将其添加到菜单中?由于某种原因,我的变量声明遇到错误:

"NSString不是CFString的子类型".

import Foundation

import Cocoa

import IOKit
import IOKit.serial


@objc class Serial {

    init() {
    }

    @IBOutlet var serialListPullDown : NSPopUpButton!

    func refreshSerialList(defaultprompt: String) {


        let masterPort: mach_port_t = kIOMasterPortDefault
        let classesToMatch: CFDictionary =     IOServiceMatching(kIOSerialBSDServiceValue).takeUnretainedValue()
        var matchingServices: io_iterator_t = 0

        // remove everything from the pull down list
        serialListPullDown?.removeAllItems()

        // ask for all the serial ports
        let kernResult = IOServiceGetMatchingServices(masterPort, classesToMatch, &matchingServices)
        if kernResult == KERN_SUCCESS {
            // success
            while (io_object_t() == IOIteratorNext(matchingServices)) {
                var …
Run Code Online (Sandbox Code Playgroud)

string serial-port iokit swift

18
推荐指数
2
解决办法
1万
查看次数

在Cocoa上发送MCCS命令

我正在尝试为Mac编写一个简单的Cocoa App,其目的很简单:将我的戴尔显示器输入切换到另一个(这样我就可以在PC和MAC之间切换).我已经找到了一个Windows应用程序(由entechtaiwan执行mControl),他们解释了他们在那里做了什么:

"要通过软件切换输入,请使用VESA MCCS命令60h.要将该命令发送到监视器,您需要读取和写入连接到监视器的GPU I/O焊盘.同样在Mac上."

有谁知道如何从Cocoa应用程序发送这样的命令?也许这里有一个图书馆......难道不是很简单吗?

cocoa gpu iokit

14
推荐指数
1
解决办法
645
查看次数

如何在OS X上获得CPU温度和风扇速度?

如何在OS X中获得CPU温度和风扇速度?

我知道信息是从中获取IOHWSensorIOKit,但我无法找到有关如何完全做到这一点的任何可靠信息.

我发现了一篇带有示例程序的文章 - http://www.booktou.com/node/148/0321278542/ch10lev1sec7.html,但我得到的只是GPU温度.我确信在一体式Mac上有CPU温度传感器,这意味着我做错了.

macos iokit temperature

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

在OS X> = 10.9中不推荐使用CGDisplayIOServicePort,如何替换?

我做了小应用程序,允许在多个显示器上快速更改屏幕分辨率.我想将产品名称显示为显示器的标题,使用此代码查找非常简单:

NSDictionary *deviceInfo = (__bridge NSDictionary *)IODisplayCreateInfoDictionary(CGDisplayIOServicePort(dispID), kIODisplayOnlyPreferredName);

NSDictionary *localizedNames = [deviceInfo objectForKey:[NSString stringWithUTF8String:kDisplayProductName]];

if([localizedNames count] > 0) {
    _title = [localizedNames objectForKey:[[localizedNames allKeys] objectAtIndex:0]];
} else {
    _title = @"Unknown display";
}
Run Code Online (Sandbox Code Playgroud)

CGDisplayIOServicePort在OS X> = 10.9中已被弃用,Apple的文档称没有替代品.如何在不使用此方法的情况下查找服务端口或产品名称?

我试图迭代IO注册表并尝试使用IOServiceGetMatchingServices方法来查找显示服务,但我不是很熟悉IO注册表,所以我找不到解决方案.

感谢帮助!

macos cocoa objective-c iokit osx-mavericks

13
推荐指数
1
解决办法
2738
查看次数

如何在进程启动时降低IOKit预留的内存量?

我是一个开发人员,从事一个非常大的内存密集型32位应用程序.耗尽虚拟地址空间(内存)对我们来说是个问题.在我调查一些最近的问题时,我注意到IOKit(512MB)保留了大量内存.此内存未分配,但仅保留.进一步调查显示,大多数应用程序(Safari,iTunes等)都保留了这块内存.它似乎保持未分配状态.我正在使用vmmap进行测试.例如,这是使用默认模板使用XCode制作的Cocoa应用程序:

REGION TYPE                      VIRTUAL
===========                      =======
CG backing stores                  1008K
CG image                              4K
CG raster data                       64K
CG shared images                   2252K
Carbon                             7264K
CoreGraphics                         16K
IOKit (reserved)                  512.0M        reserved VM address space (unallocated)
MALLOC                             59.0M        see MALLOC ZONE table below
MALLOC guard page                    48K
MALLOC metadata                     348K
Memory tag=242                       12K
STACK GUARD                        56.0M
Stack                              8712K
VM_ALLOCATE                        16.2M
__DATA                             8296K
__IMAGE                            1240K
__LINKEDIT                         31.5M
__TEXT                             76.7M
__UNICODE                           536K
mapped file                        27.4M
shared memory                      1320K
===========                      =======
TOTAL                             809.2M
TOTAL, minus reserved …
Run Code Online (Sandbox Code Playgroud)

macos memory-management framebuffer core-graphics iokit

11
推荐指数
1
解决办法
1832
查看次数