Tart setting

## 타르트 가상환경 실행 ```bash nohup tart run everycharge ``` --- ## 가상환경 내부 팀시티 에이전트 실행 ```bash cd ~/buildAgentFull/bin ./agent.sh start ``` --- ## 가상환경 내부 환경 설정 ### Ruby rbenv - ruby 2.7.5 ### Node nvm - node 18 ### 심볼릭 링크 추가 error: Can't find 'node' binary to build React Native bundle If you have non-standard nodejs installation, select your project in Xcode, find 'Build Phases' - 'Bundle React Native code and images' and change NODE_BINARY to absolute path to your node executable (you can find it by invoking 'which node' in the terminal) `ln -s $(which node) /usr/local/bin/node` ### 안드로이드 스튜디오 설치 후 android sdk 환경을 못잡으면 역시 심볼릭 링크로 우회 ```bash ln -s /Users/admin/Library/Android/sdk /Users/admin/android-sdk ``` ### 키 스토어 및 Fastlane credential 설치 구글드라이브 - https://drive.google.com/drive/u/1/folders/1OrNZ8SfhIjg5lIQLMx3csNEPQdRFpUKH 디렉토리 위치 : /Users/admin/EveryCharge.keystore ### 백업 이미지 https://drive.google.com/drive/folders/1KWa5g1VL8uk-cAH...

Modularization of react NativeModules


써드파티 SDK를 붙이는데 해당 업체에서 npm package 가 아닌 각 OS의 SDK 와 react native 코드를 주면서 앱에 내장하라는 가이드를 받았다.

물론 이를 그냥 앱에 넣을 수는 없어서 package 로 분리하는 작업을 하였다. 이 작업을 하며 겪었던 트러블슈팅을 정리하고자 한다.

# Android

## 자바와 코틀린간 패키지 참조 불가
build.gradle (app) 에 하단 설정 추가
```
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
```

## Could not find com.this.repo.

모듈의 example 프로젝트에서 받고자하는 sdk 라이브러리가 없다는 에러. example 프로젝트의 build.gradle 에 아래 코드를 추가하여 필요한 sdk 를 다운받을 수 있도록 한다.

Can’t find module in example project, and I fixed it adding below codes in build.gradle (example)

```
allprojects {
    repositories{
        maven { url 'https://repository.something/‘ } // change this line to download the sdk you aimed
    }
}
```

##  Workspaces can only be enabled in private projects.

모듈을 붙이고자 하는 프로젝트는 프라이빗 프로젝트이기 때문에 npm 에 퍼블리쉬되지 않은 패키지의 경우 package.json 에 "private:true" 를 추가해야 한다.

Because my project is “private:true”, If I want to add non-published package, the package should be “pritvate:true” in package.json



# ios

## xcframework 이란?
받은 sdk 중 ios 부분은 xcframework으로 이루어져있었다. 찾아보니 설명은 다음과 같다
XCFramework 번들은 Xcode로 만들어진 바이너리 패키지이며 다양한 플랫폼에서의 빌드 시 필요한 프레임워크와 라이브러리들을 포함한다.
그러므로 xcframework 은 arm64, x86_64 아키텍쳐를 모두 지원할 것으로 판단됨.
An XCFramework bundle, or artifact, is a binary package created by Xcode that includes the frameworks and libraries necessary to build for multiple platforms
So, xcframework means support arm64 and x86_64 both




Comments

Popular posts from this blog

카카오 내비 리엑트 네이티브 모듈 만들기 ft.코틀린

Operating System Concepts 9th

Operating System Concept