2016-09-19 11 views
0

보안 범위가 지정된 관리 책갈피를 만들려고하지만 일반 C 파일에서 Objective-C를 사용하는 일반 C 만 사용해야합니다.일반 범위의 보안 범위가 지정된 책갈피

심지어 할 수 있습니까 아니면 그냥 포기해야합니까?

조언이 있으십니까? C 함수에서 Obj-C 함수를 호출하고 파일을 .c로 유지할 수 있습니까?

는, 사전에 모두 감사 니콜라스

답변

0

Objective-C을 지원할 때 C 만 사용하려는 이유는 상상할 수 없습니다. 그러나 실제로 원하는 경우 NSURL 및 메모리 관리에 대해 CoreFoundation을 사용하는 것이 좋습니다.

모든 URL CoreFoundation의 기능은 here입니다.

메모리 관리와 관련하여 here으로 잘 설명되어있는 CFRetain/CFRelease 함수에 관심이있을 수 있습니다. 그것은 Cocoa/CocoaTouch 종류의 많은 지원을하고있다으로

기본적으로 C 당신이 원하는 모든 경우, 다음 CoreFoundation 좋은 시작이다.

+0

Ocbjective-C를 지원하지 않는 개발 용 타사 프로그래밍 환경을 사용하고 있습니다. 그래서 저는 그런 것들을 위해 먼 길을 노력하고 있습니다. 정보를 제공해 주셔서 감사합니다. Nik –

+0

@NikolasKon 그러면 'CoreFoundation'이 필요한 프레임 워크입니다. 만약 당신의 개발 환경이 다시 시도 할 수 있다면, 당연히 :) – Cristik

+0

나는 [CoreSoundClear]의'CFURLCreateBookmarkData' **를 사용해야한다. ** [Security-Scoped Bookmarks]에서 참조되는'bookmarkDataWithOptions'의 ** Persistent Resource Access] (https://developer.apple.com/library/content/documentation/Security/Conceptual/AppSandboxDesignGuide/AppSandboxInDepth/AppSandboxInDepth.html#//apple_ref/doc/uid/TP40011183-CH3-SW16)를 참조하십시오. 아직 시도하지는 않았지만 지금은 훨씬 명확 해졌습니다. 당신은 정말로 나를 많이 도왔습니다. 고맙습니다! –

0

그것은 행할 수 있지만, 기본적으로 컴파일러, 그렇지 않으면 당신을 위해 할 것이다 일을하는 것과 같습니다. ARC를 사용할 수 없습니다.

objc include 폴더의 헤더 파일에 가장 적합한 설명서가 있음을 확인했습니다.

예. objc_msgSend의 변형을 찾아보십시오. #include <objc/message.h