소비자에게 내부 클래스와 메소드를 노출 "응용 프로그램 확장 API 만 허용"확인 Logger
클래스와 log
메서드는 프레임 워크의 내부에 있으며 일반적으로 건물은 ObjC
에 노출되지 않습니다. 하지만 내 프레임 워크 타겟의 일반 설정에서 '앱 확장 API 만 허용'을 선택하면 생성 된 MyFramework-Swift.h
에 이제 클래스 및 메소드 선언이 모두 포함되어 있습니다. 즉, 공개 선언 된 것처럼 프레임 워크의 소비자 모두에게 표시 될 수 있습니다. :는 아이폰 OS 프레임 워크 프로젝트에서 나는 간단한 아이폰 OS 프레임 워크 스위프트 프로젝트를 생성 한 스텁 방법 <code>log(_:)</code></p> <pre><code>class Logger: NSObject { func log(_ message:String) { // ... } } </code></pre> <p>와 함께 하나의 스위프트 클래스 <code>Logger</code>을 추가
SWIFT_CLASS("_TtC9Framework6Logger")
@interface Logger : NSObject
- (void)log:(NSString * _Nonnull)message;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
누군가 이유를 설명해 주시겠습니까? 미리 감사드립니다!
코드 스 니펫을 게시하는 데 스크린 샷을 사용하면 안됩니다. – Losiowaty