2014-12-09 1 views
1

샌드 박스 앱에서 AppleSMC 장치에 액세스하려면 온도 센서 및 FAN RPM에 액세스하려면 어떤 자격을 사용해야합니까? 사전에osx 코코아 샌드에 액세스 sandboxed 앱

kern_return_t result; 
mach_port_t masterPort; 
io_iterator_t iterator; 
io_object_t device; 

/*result =*/ IOMasterPort(MACH_PORT_NULL, &masterPort); 

CFMutableDictionaryRef matchingDictionary = IOServiceMatching("AppleSMC"); 
result = IOServiceGetMatchingServices(masterPort, matchingDictionary, &iterator); 

감사

답변

2

AFAIK AppleSMC이 API로 간주하고, 따라서 당신이 그것을 액세스 할 수 있도록 해당하는 자격이 없다되지 않은 : 여기

내가 그것을 액세스하기 위해 사용하고있는 코드입니다. (소스 Apple Developer Forum message 1082393)

나중에 앱 스토어에 샌드 박스가 적용되지 않은 앱이있을 수 있습니다. 자세한 내용은 "circumvent sandbox"을 참조하십시오.

이 문제는 2011 년 5 월에 마지막으로 업데이트 된 Sandbox가 구현되기 훨씬 전에 "MagicanPaster"라는 질문에 적용됩니다.

귀하는 귀하의 앱을 Mac App Store 외부로 배포 할 수 있습니다. 여기에는 brief overview by matt gemmell에 걸리는 내용이 포함되어 있습니다.

+0

감사합니다 ..하지만 ... 다른 앱이 기기의 정보에 액세스하고 있습니다. – ColdSteel

+0

하지만 앱 스토어에서 샌드 박스가 아닌 앱을 허용하지 않습니다. - 또는 잘못 되었습니까? – ColdSteel

+0

내가 말하는 앱은 MagicanPaster – ColdSteel