AOS_iOS_NRE_Sample/NexacroN_V24/iOS/HelloNexacroIos/README.md

105 lines
4.2 KiB
Markdown
Raw Permalink Normal View History

2023-09-18 15:18:52 +09:00
<h1 align="center">Hello Nexacro iOS Webview</h1>
iOS 하이브리드 버전을 테스트 하기 위한 앱 입니다.
### 테스트 사전 단계
- 빌드된 *.xcframework 라이브러를 아래의 경로에 추가합니다.
```sh
Hybrid/example/HelloNexacroIos/libs/nexacro.xcframework
Hybrid/example/HelloNexacroIos/libs/NXAcceleration.xcframework
Hybrid/example/HelloNexacroIos/libs/NXAudioPlayer.xcframework
Hybrid/example/HelloNexacroIos/libs/NXBluetoothLE.xcframework
Hybrid/example/HelloNexacroIos/libs/NXCamera.xcframework
Hybrid/example/HelloNexacroIos/libs/NXContact.xcframework
Hybrid/example/HelloNexacroIos/libs/NXGeolocation.xcframework
Hybrid/example/HelloNexacroIos/libs/NXLiteDB.xcframework
Hybrid/example/HelloNexacroIos/libs/NXNetwork.xcframework
Hybrid/example/HelloNexacroIos/libs/NXSms.xcframework
Hybrid/example/HelloNexacroIos/libs/NXVibrator.xcframework
Hybrid/example/HelloNexacroIos/libs/NXPush.xcframework
```
## 빌드에 필요한 추가 의존 라이브러리
- 없음.
## 테스트 방법
- 상속 클래스
```sh
@interface ViewController : NXViewController
@interface AppDelegate : NXAppDelegate
```
- 부트스트랩 주소를 선언하는 오버라이딩 대상 메소드 및 설정방법
```sh
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.viewController = [[ViewController alloc] init];
// server 및 update 모드 구동 방법
self.viewController.projectUrl = @"http://.../_ios_/";
self.viewController.bootstrapUrl = @"http://.../_ios_/start_ios.json";
// local 모드 구동 방법
// self.viewController.bootstrapUrl = @"file:///ios_asset/archive/start_ios.json";
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end
```
## Cordova 플러그인 추가 방법
- (개발중인) 코르도바 제네레이터를 사용합니다.
- 코르도바 플러그인 모듈이 생성됩니다.
- 넥사크로 프로젝트 하위 경로로 필요한 플러그인 소스가 복사되어 배치됩니다.
- 넥사크로 프로젝트에 배치된 소스가 앱 프로젝트에 복사됩니다.
- 코르도바 제네레이터가 하지 못하는 작업은 plugin.xml 정보를 바탕으로 아래와 같이 직접 수정합니다.
1. 넥사크로 plugin_config.xml 파일에 코르도바 플러그인을 다음과 같이 등록
```sh
<!-- plugin.xml 파일 정보를 바탕으로 plugin_config.xml 파일에 등록합니다. -->
plugin.xml
<platform name="ios">
<config-file target="config.xml" parent="/*">
<feature name="StatusBar">
<param name="ios-package" value="CDVStatusBar" />
<param name="onload" value="true" />
</feature>
<preference name="StatusBarOverlaysWebView" value="true" />
<preference name="StatusBarStyle" value="lightcontent" />
</config-file>
</platform>
==>
plugin_config.xml
<plugin name="StatusBar" class="CDVStatusBar" onload="true"/>
<preference name="StatusBarOverlaysWebView" value="true" />
<preference name="StatusBarStyle" value="lightcontent" />
코르도바의 config.xml은 넥사크로의 plugin_config.xml 파일과 동일한 역할을 합니다.
```
2. Xcode 를 통한 Cordova 플러그인 파일 추가 및 수정.
- 넥사크로 프로젝트 경로에 복사된 플러그인 소스를 앱 프로젝트에 복사한후 Xcode 에서 빌드되도록 소스를 추가합니다.
- 추가한 플러그인 소스에서 Cordova 관련 import 경로를 아래와 같이 변경합니다.
```
<Cordova/CDV.h> // 변경 전
<nexacro/Cordova/CDV.h> // 변경 후
```
3. 플러그인의 종류에 따라서 이외의 작업이 있을수 있습니다.
4. 빌드.
## 프로젝트 구성시 참고 사항
- Xcode로 iOS app 프로젝트를 생성한후 Scene 과 관련된 모든 파일을 제거 해야 합니다.