모바일 애플리케이션을 사용하여 Oracle Mobile Hub SDK 구성
코드를 작성하려면 먼저 모바일 애플리케이션을 사용하여 Oracle Mobile Hub SDK를 구성해야 합니다.
SDK 추가
기본 앱 설정 시 내부 프레임워크 없이 iOS 클라이언트 SDK를 앱에 추가합니다.
-
다운로드 파일
omce-ios-sdk-{n}.zip
(여기서 {n} 은 (는) SDK의 버전 번호임) 을 시스템의 일부 디렉토리에 압축 해제합니다. -
Zip의 추출된 콘텐츠에서
oracle_mobile_ios_sdk
디렉토리를 Xcode 프로젝트 네비게이터로 끌어 놓습니다.-
필요한 경우 항목 복사 를 선택합니다.
-
그룹 생성 을 선택합니다.
-
완료를 누릅니다.
특정 라이브러리의
.a
파일이 xcode의 응용 프로그램 개발 트리에 복사되면 해당 플랫폼 API를 SDK 호출을 통해 응용 프로그램에서 사용할 수 있습니다. 이때 앱에서 모든 SDK 정적 라이브러리를 사용할 수 있습니다. -
-
프로젝트에 대한 대상을 선택하고, 빌드 단계 탭을 선택하고, 라이브러리와 함께 바이너리 링크 를 확장하고, + 단추를 누르고, 다음 라이브러리를 추가합니다.
-
CoreData.framework
-
CoreLocation.framework
-
libsqlite3.0.tbd
-
Security.framework
-
SystemConfiguration.framework
-
-
프로젝트의 빌드 설정 섹션에서 기타 링커 플래그 (링크 아래) 를 두 번 누르고
-ObjC
를 추가합니다. -
빌드 설정 에서 검색 경로 를 확장하고 다음을 수행합니다.
-
라이브러리 검색 경로에
oracle_mobile_ios_sdk/release-iphoneos
를 추가합니다. -
사용자 헤더 검색 경로에
oracle_mobile_ios_sdk/release-iphoneos/include
를 추가합니다.
-
-
압축 해제된 zip의
Documentation
폴더를 확장하고OMC.plist
파일을 복사하여 앱의 기본 애플리케이션 번들 루트에 배치합니다. -
자동으로 복사된
OMC.plist
파일을 편집합니다. -
Xcode 7부터는 원격 통신을 HTTPS를 통해 적용하도록 하는 ATS (Application Transport Security) 정책을 고려해야 합니다.
개발 목적으로만 앱의
Info.plist
파일에 다음 키를 추가하여 앱에 대한 ATS 정책을 해제합니다.<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
주:
이 설정은 프로덕션에서 사용하면 안 됩니다. 앱에 최적의 보안을 제공하는지 확인하려면 Apple 설명서를 연구하고 Apple 권장 사항에 따라 특정 도메인에 대해 ATS 를 사용 안함으로 설정하고 해당 도메인에 대해 적절한 보안 감소를 적용하십시오.
SDK 속성 구성
IOS 앱에서 클라이언트 SDK를 사용하려면 앱에 OMC.plist
구성 파일을 추가하고 Oracle Mobile Hub 의 백엔드에 대한 환경 세부 정보 및 기타 구성 정보를 채워야 합니다. 그러면 SDK 클래스가 이 정보를 사용하여 권한 부여, 로깅, 이벤트 추적, 데이터 동기화 및 기타 기능을 관리할 수 있습니다.
애플리케이션의 기본 번들 루트에 구성 파일을 패키지화합니다.
파일은 기본적으로 다음 부분으로 나뉩니다.
-
mobileBackend
키 및 해당 콘텐츠앱에서 백엔드를 사용하는 경우 이 부분을 포함시킵니다. SDK 클래스는 백엔드에 액세스하고 api에 대해 생성된 REST 호출에 대한 HTTP 헤더를 생성할 수 있도록 지정하는 환경 및 인증 세부정보를 사용합니다.
-
구성에 적용되는 키 (예:
logLevel
및oAuthTokenEndpoint
) 입니다. 일반적으로 이러한 키는 아니지만 반드시 파일 맨 위에 나타나지는 않습니다.
다음은 텍스트 형식의 동일한 파일입니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
<plist version="1.0">
<dict>
<key>logLevel</key>
<string>debug</string>
<key>logHTTP</key>
<true/>
<key>oAuthTokenEndPoint</key>
<string>https://MY_TOKEN_ENDPOINT</string>
<key>mobileBackend</key>
<dict>
<key>name</key>
<string>EasyShoppingMBE</string>
<key>baseURL</key>
<string>https://MY_CLOUD_DOMAIN.oracle.com</string>
<key>authentication</key>
<dict>
<key>type</key>
<string>oauth</string>
<key>oauth</key>
<dict>
<key>clientID</key>
<string>11dac238ffaa4b029e78e982114642ab</string>
<key>clientSecret</key>
<string>5624cbdd-a7c5-4c10-a758-6019a5ab8da8</string>
<key>enableOffline</key>
<true/>
</dict>
</dict>
</dict>
</dict>
</plist>
또한 OMC.plist
파일에 있는 중요한 항목 중 일부에 대한 설명입니다.
-
oAuthTokenEndPoint
— 응용 프로그램이 인증 토큰을 가져오는 OAuth 서버의 URL입니다. OAuth 에 의존하는 모든 앱에 대해 이 키를 제공해야 합니다. 백엔드의 설정 페이지에서 항목을 가져옵니다. 끝점은 기본 URL (https://host.domain:port
형식) 만 포함해야 합니다. -
logLevel
— 앱 콘솔에 SDK 로깅이 표시되는 양을 결정합니다. 기본값은error
입니다. 기타 가능한 값 (세부정보 레벨 증가) 은warning
,info
및debug
입니다. 값을none
로 설정할 수도 있습니다. -
logHTTP
—true
로 설정된 경우 SDK는 모든 HTTP 요청 및 응답의 헤더 및 본문을 기록합니다. -
mobileBackend
— 백엔드에 대한 인증 세부정보 및 기타 선택적 세부정보 (예: 동기화 속성) 를 포함하는 딕셔너리 항목입니다.백엔드의 설정 페이지에서 OAuth 및 HTTP 인증서와 같은 인증 세부정보를 가져옵니다.
-
mobileBackend/baseUrl
— 백엔드를 통해 호출하는 모든 api에 대한 기본 URL입니다. 백엔드의 설정 페이지에서 항목을 가져옵니다. -
mobileBackend/authentication
— 다음 요소가 포함된 딕셔너리를 포함합니다.-
type
하위 키 - 가능한 값 (string
) 이oauth
,basic
,facebook
및tokenExchange
입니다. -
인증 인증서를 포함하는 딕셔너리를 포함하는 인증 유형에 대한 하나 이상의 하위 키입니다.
basic
및oauth
의 하위 키 내에서enableOffline
키를 추가할 수도 있습니다. 기본적으로 이 등록정보는true
로 설정됩니다.
-