- This topic has 4개 답변, 2명 참여, and was last updated 7 months, 3 weeks 전에 by
tkdgud0222.
-
글쓴이글
-
-
tkdgud0222참가자
- 글작성 : 3
- 답글작성 : 2
안녕하세요
현재 Swift 프레임워크를 Objective-C 프로젝트에 import 시켜 사용하고 있습니다.
환경
Objective-C 프로젝트에 TARGETS(번들)가 2개 이며 프로젝트 내 test.lic 파일을 찾아야 하는 상황입니다.
현재 Swift 프레임워크에 작성한 Bundle.main.path(forResource: “test”, ofType: “.lic”)로 objective-c 에서 파일 위치를 찾아오고 있습니다.
질문
test.lic을 objective-c프로젝트에 추가할 당시 발생한 Add to targets 선택란에 해당 targets 중 main target 선택하여 추가 시 정상적으로 Swift 파일찾는 코드가 적용되는데
Add to targets 선택란에 main target이 아닌 다른 target(번들)을 선택 후 추가하여 테스트 진행 시 파일위치를 찾지 못합니다.
다른 target(번들)을 선택 후 test.lic을 추가한 경우 Swift 프레임워크에서 해당 test.lic의 파일 위치를 찾는 방법 질문드립니다.
2024-01-17 오전 10:30 #61178 -
-
tkdgud0222참가자
- 글작성 : 3
- 답글작성 : 2
제가 제작한 Swift 프레임워크에 Bundle.main.path(forResource: “test”, ofType: “.lic”)라는 코드가 작성되어 있으며
이 Swift프레임워크를 Objective-C 프로젝트에 import 하여 Objective-C 프로젝트 내 해당 파일을 가져와 사용하려 합니다.
질문
현재 Objective-c 프로젝트에 각 다른 타겟(번들)이 2개가 있으며
테스트 해보니 번들(타겟)이 2개 이상일 경우 프로젝트 내 파일이나 프레임워크 추가 시 Choose options for adding these files: 라는 선택란이 나오게 되는데 이 부분에 맨 하단에
Add to targets: 선택란에 번들(타겟)을 선택할 수 있는 선택란이 있었습니다.
편의상 각 1번 번들 (프로젝트 제작 시 기본적으로 함께 생성되었던 main번들), 2번 번들(추가적으로 테스트 위해 생성한 번들)이라고 하겠습니다.
1번 번들에 Swift프로젝트를 Objective-C 프로젝트에 import 하고 Add to targets: 또한 1번 프로젝트를 선택한 후
test.lic 파일을 Objective-C 프로젝트 2번 번들에 위치시키고 Add to targets:를 1번 번들을 선택하면 Bundle.main.path가 정상적으로 파일을 가져오는데
test.lic 파일을 Objective-C 프로젝트 2번 번들에 위치시키고 Add to targets:를 2번 번들을 선택하면 파일을 가져오지 못합니다.
아마 타겟이 main에 위치하지 않아서 Bundle.mail.path 가 위치를 가져오지 못하는 문제 같은데
위 상황에서 test.lic 파일을 2번 번들에 위치하고 Add to targets: 를 2번 번들을 선택 한 후 파일을 가져올 수 있는 방법이 있는지 질문드립니다..ㅠㅜ
2024-01-19 오전 10:57 #61252-
야곰키 마스터
- 글작성 : 37
- 답글작성 : 579
https://developer.apple.com/documentation/foundation/bundle
문서를 찾아보니 main 번들 외에 allBundles 프로퍼티를 사용해서 모든 번들을 가져올 수 있는데, 이를 활용해보심은 어떠실까요?2024-01-19 오후 1:54 #61255-
tkdgud0222참가자
- 글작성 : 3
- 답글작성 : 2
먼저 답변 주셔서 너무 감사드립니다!
말씀해 주신 내용으로 이전에 테스트 해본 결과
Bundle.allBundles 를 통해 번들정보를 모두 받아온 후 test.lic를 찾는 코드를 작성 후 테스트 진행해 보았는데
제가 test.lic 파일을 프로젝트에 추가 시 나오는 Add to targets: 선택란에서 main번들이 아닌 2번 번들로 추가 시
allBundles에 해당 2번 번들정보가 나오지 않았습니다.
allBundles로 나온 번들은 아래와 같으며 test.lic 파일 타겟을 메인번들로하지 않고 타겟을 2번으로 파일 추가 시 allBundles 로 나오는 번들 정보 또한 이전과 동일하게 메인번들인 것 같습니다.
com.test.test01 <==== 메인 번들
com.apple.AGXMetalA12
com.apple.uikit.BoundingPathData
com.apple.CoreGlyphs
-
이 답변은
tkdgud0222에 의해 7 months, 3 weeks 전에 수정됐습니다.
2024-01-19 오후 2:52 #61258
-
-
-
글쓴이글
- 답변은 로그인 후 가능합니다.