@1selfworld/adchain-sdk-react-native 1.0.11 → 1.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,21 +1,21 @@
1
- # @adchain/expo-sdk
1
+ # @1selfworld/adchain-sdk-react-native
2
2
 
3
- AdChain SDK for React Native with full Expo support.
3
+ React Native Expo 위한 AdChain SDK입니다.
4
4
 
5
- ## 🚨 Important Notices
5
+ ## 🚨 중요 공지
6
6
 
7
- ### Expo Go Not Supported
8
- This SDK includes native code and **does not work in Expo Go**.
7
+ ### Expo Go 미지원
8
+ SDK 네이티브 코드를 포함하고 있어 **Expo Go에서 작동하지 않습니다**.
9
9
 
10
- You must use:
11
- - ✅ Development Build: `npx expo run:android` or `npx expo run:ios`
10
+ 반드시 다음 방법을 사용하세요:
11
+ - ✅ Development Build: `npx expo run:android` 또는 `npx expo run:ios`
12
12
  - ✅ EAS Build: `eas build --profile development`
13
13
 
14
- ### 🔐 Security Notice
14
+ ### 🔐 보안 주의사항
15
15
  app.json에 저장된 API 키는 앱 번들에 포함됩니다.
16
16
 
17
17
  **권장사항:**
18
- - ✅ **개발/테스트:** app.json 사용 OK
18
+ - ✅ **개발/테스트:** app.json 사용 가능
19
19
  - ⚠️ **프로덕션:** 환경별 키 분리 권장
20
20
  - Android: `buildConfigField` 사용
21
21
  - iOS: `xcconfig` 파일 사용
@@ -28,24 +28,24 @@ const token = await fetchTokenFromServer();
28
28
  await AdchainSDK.initializeWithToken(token);
29
29
  ```
30
30
 
31
- ## Installation
31
+ ## 설치
32
32
 
33
33
  ```bash
34
- npx expo install @adchain/expo-sdk expo-constants
34
+ npx expo install @1selfworld/adchain-sdk-react-native expo-constants
35
35
  ```
36
36
 
37
- **Note:** `expo-constants` is a peer dependency. Install it separately.
37
+ **참고:** `expo-constants`는 peerDependency입니다. 별도로 설치해야 합니다.
38
38
 
39
- ## Configuration
39
+ ## 설정
40
40
 
41
- Add to your `app.json`:
41
+ `app.json`에 다음을 추가하세요:
42
42
 
43
43
  ```json
44
44
  {
45
45
  "expo": {
46
46
  "plugins": [
47
47
  [
48
- "@adchain/expo-sdk",
48
+ "@1selfworld/adchain-sdk-react-native",
49
49
  {
50
50
  "appKey": "YOUR_APP_KEY",
51
51
  "appSecret": "YOUR_APP_SECRET",
@@ -57,17 +57,17 @@ Add to your `app.json`:
57
57
  }
58
58
  ```
59
59
 
60
- ## Usage
60
+ ## 사용법
61
61
 
62
62
  ```typescript
63
63
  import { useEffect } from 'react';
64
- import AdchainSDK from '@adchain/expo-sdk';
64
+ import AdchainSDK from '@1selfworld/adchain-sdk-react-native';
65
65
 
66
66
  export default function App() {
67
67
  useEffect(() => {
68
- // Auto-initialize using app.json config
68
+ // app.json 설정을 사용한 자동 초기화
69
69
  AdchainSDK.autoInitialize()
70
- .then(() => console.log('SDK ready'))
70
+ .then(() => console.log('SDK 준비 완료'))
71
71
  .catch(console.error);
72
72
  }, []);
73
73
 
@@ -81,131 +81,131 @@ export default function App() {
81
81
  }
82
82
  ```
83
83
 
84
- ## API Reference
84
+ ## API 레퍼런스
85
85
 
86
- ### Core Methods
87
- - `autoInitialize()` - Auto-initialize using app.json config
88
- - `initialize(config)` - Manual initialization
89
- - `login(user)` - User login
90
- - `logout()` - User logout
91
- - `isLoggedIn()` - Check login status
92
- - `getCurrentUser()` - Get current user info
86
+ ### 핵심 메서드
87
+ - `autoInitialize()` - app.json 설정을 사용한 자동 초기화
88
+ - `initialize(config)` - 수동 초기화
89
+ - `login(user)` - 사용자 로그인
90
+ - `logout()` - 사용자 로그아웃
91
+ - `isLoggedIn()` - 로그인 상태 확인
92
+ - `getCurrentUser()` - 현재 사용자 정보 조회
93
93
 
94
- ### Offerwall
95
- - `openOfferwall(placementId?)` - Open offerwall
96
- - `openAdjoeOfferwall(placementId?)` - Open ADJOE offerwall
94
+ ### 오퍼월
95
+ - `openOfferwall(placementId?)` - 오퍼월 열기
96
+ - `openAdjoeOfferwall(placementId?)` - ADJOE 오퍼월 열기
97
+ - `openOfferwallNestAds(placementId)` - NestAds 오퍼월 열기
97
98
 
98
- ### Quiz & Mission
99
- - `loadQuizList(unitId)` - Load quiz list
100
- - `clickQuiz(unitId, quizId)` - Click quiz
101
- - `loadMissionList(unitId)` - Load mission list
102
- - `clickMission(unitId, missionId)` - Click mission
103
- - `claimReward(unitId)` - Claim reward
99
+ ### 퀴즈 & 미션
100
+ - `loadQuizList(unitId)` - 퀴즈 목록 로드
101
+ - `clickQuiz(unitId, quizId)` - 퀴즈 클릭
102
+ - `loadMissionList(unitId)` - 미션 목록 로드
103
+ - `clickMission(unitId, missionId)` - 미션 클릭
104
+ - `claimReward(unitId)` - 보상 수령
104
105
 
105
- ### Debug
106
- - `getUserId()` - Get current user ID
107
- - `getIFA()` - Get advertising ID
108
- - `isInitialized()` - Check SDK initialization
106
+ ### 디버그
107
+ - `getUserId()` - 현재 사용자 ID 조회
108
+ - `getIFA()` - 광고 ID 조회
109
+ - `isInitialized()` - SDK 초기화 상태 확인
109
110
 
110
- ## 🔧 Technical Notes
111
+ ## 🔧 기술 노트
111
112
 
112
- ### Swift 5.5 (Not 5.9)
113
- This SDK uses **Swift 5.5** due to known issues with optional parameter passing
114
- in React Native bridges with Swift 5.9.
113
+ ### Swift 5.5 사용 (5.9 아님)
114
+ SDK **Swift 5.5**를 사용합니다. Swift 5.9에서 발견된 React Native 브리지의
115
+ 선택적 매개변수 전달 문제를 피하기 위함입니다.
115
116
 
116
- **Background:** In production, we experienced bugs where optional parameters in
117
- Swift 5.9 were not properly passed to React Native, causing silent failures.
117
+ **배경:** 프로덕션 환경에서 Swift 5.9의 선택적 매개변수가 React Native로
118
+ 제대로 전달되지 않아 조용히 실패하는 버그를 경험했습니다.
118
119
 
119
- Tested and stable with:
120
+ 테스트 완료 환경:
120
121
  - Xcode 14.x - 15.x
121
122
  - Swift 5.5
122
123
  - iOS 14.0+
123
124
 
124
- ### Kotlin Standard Library
125
- The SDK includes `kotlin-stdlib:1.9.21` as required by the native AdChain SDK.
126
- If you experience version conflicts, Gradle will automatically resolve to the
127
- host app's version.
125
+ ### Kotlin 표준 라이브러리
126
+ SDK는 네이티브 AdChain SDK에서 요구하는 `kotlin-stdlib:1.9.21`을 포함합니다.
127
+ 버전 충돌이 발생하면 Gradle 자동으로 호스트 앱의 버전으로 해결합니다.
128
128
 
129
- ### React Native Dependency
130
- The SDK uses `compileOnly` for `react-android` to avoid duplicate classes in
131
- the AAR. The dependency is provided by the host application.
129
+ ### React Native 의존성
130
+ SDK AAR의 중복 클래스를 피하기 위해 `react-android`에 대해 `compileOnly`를 사용합니다.
131
+ 의존성은 호스트 애플리케이션에서 제공됩니다.
132
132
 
133
- ## Build & Run
133
+ ## 빌드 & 실행
134
134
 
135
135
  ```bash
136
- # Prebuild (generate native code)
136
+ # Prebuild (네이티브 코드 생성)
137
137
  npx expo prebuild
138
138
 
139
- # Verify plugin applied
139
+ # 플러그인 적용 확인
140
140
  cat android/settings.gradle | grep jitpack
141
141
  cat ios/Podfile | grep AdChainSDK
142
142
 
143
- # Run on Android
143
+ # Android 실행
144
144
  npx expo run:android
145
145
 
146
- # Run on iOS
146
+ # iOS 실행
147
147
  npx expo run:ios
148
148
  ```
149
149
 
150
- ## Requirements
150
+ ## 요구사항
151
151
 
152
152
  - Expo SDK 50+
153
153
  - React Native 0.74+
154
154
  - iOS 14.0+
155
155
  - Android API 24+
156
- - **Development Build** (Expo Go not supported)
156
+ - **Development Build** (Expo Go 미지원)
157
157
 
158
- ## Troubleshooting
158
+ ## 문제 해결
159
159
 
160
- ### "SDK not initialized" error
161
- - Make sure you added the plugin to app.json
162
- - Check that appKey and appSecret are correct
163
- - Verify you called `autoInitialize()` before other methods
160
+ ### "SDK not initialized" 오류
161
+ - app.json에 플러그인을 추가했는지 확인
162
+ - appKey appSecret 올바른지 확인
163
+ - 다른 메서드 호출 전에 `autoInitialize()` 호출 확인
164
164
 
165
- ### "Expo config not found" error
166
- - You're probably using Expo Go (not supported)
167
- - Use: `npx expo run:android` or `npx expo run:ios`
165
+ ### "Expo config not found" 오류
166
+ - Expo Go를 사용 중일 가능성이 높습니다 (미지원)
167
+ - 사용: `npx expo run:android` 또는 `npx expo run:ios`
168
168
 
169
- ### "expo-constants not found"
170
- - Install peer dependency: `npx expo install expo-constants`
169
+ ### "expo-constants not found" 오류
170
+ - peer dependency 설치: `npx expo install expo-constants`
171
171
 
172
- ### Prebuild fails
173
- - Check @expo/config-plugins is in devDependencies
174
- - Try: `rm -rf node_modules && npm install`
172
+ ### Prebuild 실패
173
+ - devDependencies에 @expo/config-plugins 있는지 확인
174
+ - 시도: `rm -rf node_modules && npm install`
175
175
 
176
176
  ### JitPack not found (Android)
177
- - Verify settings.gradle has maven { url "https://jitpack.io" }
178
- - Check internet connection
179
- - Try: cd android && ./gradlew clean
177
+ - settings.gradle maven { url "https://jitpack.io" }가 있는지 확인
178
+ - 인터넷 연결 확인
179
+ - 시도: `cd android && ./gradlew clean`
180
180
 
181
- ### Pod install fails (iOS)
182
- - Check Git URL is correct
183
- - Verify tag v1.0.42 exists
184
- - Try: cd ios && rm -rf Pods Podfile.lock && pod install
181
+ ### Pod install 실패 (iOS)
182
+ - Git URL 올바른지 확인
183
+ - 태그 v1.0.42 존재하는지 확인
184
+ - 시도: `cd ios && rm -rf Pods Podfile.lock && pod install`
185
185
 
186
- ## Version Compatibility
186
+ ## 버전 호환성
187
187
 
188
- | Package Version | Android SDK | iOS SDK | Swift | Expo SDK |
189
- |----------------|-------------|---------|-------|----------|
190
- | 1.0.0 | v1.0.28 | v1.0.42 | 5.5 | 50-53 |
188
+ | 패키지 버전 | Android SDK | iOS SDK | Swift | Expo SDK |
189
+ |------------|-------------|---------|-------|----------|
190
+ | 1.0.0 | v1.0.28 | v1.0.42 | 5.5 | 50-53 |
191
191
 
192
- ## Known Limitations
192
+ ## 알려진 제한사항
193
193
 
194
194
  ### v1.0.0
195
- - OTA updates (expo-updates) not yet supported - use Development Build
196
- - Swift 5.9 optional parameter bug - staying on 5.5
197
- - CocoaPods Trunk: AdChainSDK uses Git Pod (not on Trunk yet)
195
+ - OTA 업데이트 (expo-updates) 아직 미지원 - Development Build 사용
196
+ - Swift 5.9 선택적 매개변수 버그 - 5.5 유지
197
+ - CocoaPods Trunk: AdChainSDK Git Pod 사용 (아직 Trunk 미등록)
198
198
 
199
- ### Planned for v1.1.0
200
- - expo-updates fallback support
201
- - Conditional iOS plugin (Trunk vs Git)
202
- - Server-side token initialization
203
- - Enhanced error messages
199
+ ### v1.1.0 계획
200
+ - expo-updates 폴백 지원
201
+ - 조건부 iOS 플러그인 (Trunk vs Git)
202
+ - 서버 사이드 토큰 초기화
203
+ - 향상된 오류 메시지
204
204
 
205
- ## License
205
+ ## 라이선스
206
206
 
207
207
  Proprietary
208
208
 
209
- ## Support
209
+ ## 지원
210
210
 
211
- Email: contacts@1self.world
211
+ 이메일: contacts@1self.world
@@ -712,6 +712,35 @@ class AdchainSdkModule(private val reactContext: ReactApplicationContext)
712
712
  }
713
713
  }
714
714
 
715
+ @ReactMethod
716
+ fun openOfferwallNestAds(placementId: String, promise: Promise) {
717
+ try {
718
+ reactContext.currentActivity?.let { activity ->
719
+ val callback = object : OfferwallCallback {
720
+ override fun onOpened() {
721
+ promise.resolve(createResponse(true, "NestAds Offerwall opened"))
722
+ }
723
+
724
+ override fun onClosed() {
725
+ // 이미 resolve 되었으므로 무시
726
+ }
727
+
728
+ override fun onError(message: String) {
729
+ // 이미 resolve 되었으므로 무시
730
+ }
731
+
732
+ override fun onRewardEarned(amount: Int) {
733
+ // 이미 resolve 되었으므로 무시
734
+ }
735
+ }
736
+
737
+ AdchainSdk.openOfferwallNestAds(activity, placementId, callback)
738
+ } ?: promise.reject("NESTADS_ERROR", "Current activity is null")
739
+ } catch (t: Throwable) {
740
+ promise.reject("NESTADS_ERROR", t.message, t)
741
+ }
742
+ }
743
+
715
744
  // ===== Event Emitter Methods =====
716
745
 
717
746
  @ReactMethod
@@ -780,6 +780,55 @@ class AdchainSdkModule: RCTEventEmitter {
780
780
  }
781
781
  }
782
782
  }
783
+
784
+ @objc func openOfferwallNestAds(_ placementId: NSString,
785
+ resolver: @escaping RCTPromiseResolveBlock,
786
+ rejecter: @escaping RCTPromiseRejectBlock) {
787
+ class OfferwallCallbackImpl: NSObject, OfferwallCallback {
788
+ let resolver: RCTPromiseResolveBlock
789
+ var hasResolved = false
790
+
791
+ init(resolver: @escaping RCTPromiseResolveBlock) {
792
+ self.resolver = resolver
793
+ }
794
+
795
+ func onOpened() {
796
+ if !hasResolved {
797
+ hasResolved = true
798
+ resolver([
799
+ "success": true,
800
+ "message": "NestAds Offerwall opened"
801
+ ])
802
+ }
803
+ }
804
+
805
+ func onClosed() {
806
+ // 이미 resolve 되었으므로 무시
807
+ }
808
+
809
+ func onError(_ message: String) {
810
+ // 이미 resolve 되었으므로 무시
811
+ }
812
+
813
+ func onRewardEarned(_ amount: Int) {
814
+ // 이미 resolve 되었으므로 무시
815
+ }
816
+ }
817
+
818
+ DispatchQueue.main.async { [weak self] in
819
+ if let topVC = self?.getTopViewController() {
820
+ let callback = OfferwallCallbackImpl(resolver: resolver)
821
+ let finalPlacementId = placementId as String
822
+ AdchainSdk.shared.openOfferwallNestAds(
823
+ presentingViewController: topVC,
824
+ placementId: finalPlacementId,
825
+ callback: callback
826
+ )
827
+ } else {
828
+ rejecter("NESTADS_ERROR", "No view controller available", nil)
829
+ }
830
+ }
831
+ }
783
832
  }
784
833
 
785
834
  // MARK: - Objective-C Export
@@ -85,7 +85,7 @@ class AdchainSDK {
85
85
  const appKey = isIOS ? adchainIosAppKey : adchainAndroidAppKey;
86
86
  const appSecret = isIOS ? adchainIosAppSecret : adchainAndroidAppSecret;
87
87
  if (!appKey || !appSecret) {
88
- throw new Error(`AdChain: Missing ${Platform.OS} configuration in app.json. ` + 'Please add AdChain SDK to plugins section:\n\n' + '{\n' + ' "expo": {\n' + ' "plugins": [\n' + ' ["@adchain/expo-sdk", {\n' + ' "android": {\n' + ' "appKey": "YOUR_ANDROID_APP_KEY",\n' + ' "appSecret": "YOUR_APP_SECRET"\n' + ' },\n' + ' "ios": {\n' + ' "appKey": "YOUR_IOS_APP_KEY",\n' + ' "appSecret": "YOUR_APP_SECRET"\n' + ' }\n' + ' }]\n' + ' ]\n' + ' }\n' + '}');
88
+ throw new Error(`AdChain: Missing ${Platform.OS} configuration in app.json. ` + 'Please add AdChain SDK to plugins section:\n\n' + '{\n' + ' "expo": {\n' + ' "plugins": [\n' + ' ["@1selfworld/adchain-sdk-react-native", {\n' + ' "android": {\n' + ' "appKey": "YOUR_ANDROID_APP_KEY",\n' + ' "appSecret": "YOUR_APP_SECRET"\n' + ' },\n' + ' "ios": {\n' + ' "appKey": "YOUR_IOS_APP_KEY",\n' + ' "appSecret": "YOUR_APP_SECRET"\n' + ' }\n' + ' }]\n' + ' ]\n' + ' }\n' + '}');
89
89
  }
90
90
  console.log(`[AdChain] Auto-initializing with ${Platform.OS} credentials...`);
91
91
  return await this.initialize({
@@ -156,6 +156,9 @@ class AdchainSDK {
156
156
  // SDK requires placementId, use empty string if not provided
157
157
  return AdchainSdk.openAdjoeOfferwall(placementId || '');
158
158
  }
159
+ async openOfferwallNestAds(placementId) {
160
+ return AdchainSdk.openOfferwallNestAds(placementId);
161
+ }
159
162
 
160
163
  // 6. Debug/Utility Methods (3개)
161
164
  async isInitialized() {
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","NativeEventEmitter","hasExpoNative","ExponentConstants","AdchainOfferwallView","LINKING_ERROR","select","ios","default","AdchainSdk","Proxy","get","Error","adchainEventEmitter","AdchainSDK","initialize","config","options","environment","timeout","appKey","appSecret","autoInitialize","OS","Constants","require","e","expoConfig","adchainAndroidAppKey","adchainAndroidAppSecret","adchainIosAppKey","adchainIosAppSecret","adchainEnvironment","adchainTimeout","extra","isIOS","console","log","error","login","user","userInfo","gender","birthYear","customProperties","userId","logout","isLoggedIn","getCurrentUser","loadQuizList","unitId","clickQuiz","quizId","loadMissionList","clickMission","missionId","claimReward","openOfferwall","placementId","openOfferwallWithUrl","url","openExternalBrowser","openAdjoeOfferwall","isInitialized","getUserId","getIFA","getBannerInfo","addQuizCompletedListener","callback","addListener","addMissionCompletedListener","addMissionProgressedListener","addMissionRefreshedListener","sdk"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","Platform","NativeEventEmitter","hasExpoNative","ExponentConstants","AdchainOfferwallView","LINKING_ERROR","select","ios","default","AdchainSdk","Proxy","get","Error","adchainEventEmitter","AdchainSDK","initialize","config","options","environment","timeout","appKey","appSecret","autoInitialize","OS","Constants","require","e","expoConfig","adchainAndroidAppKey","adchainAndroidAppSecret","adchainIosAppKey","adchainIosAppSecret","adchainEnvironment","adchainTimeout","extra","isIOS","console","log","error","login","user","userInfo","gender","birthYear","customProperties","userId","logout","isLoggedIn","getCurrentUser","loadQuizList","unitId","clickQuiz","quizId","loadMissionList","clickMission","missionId","claimReward","openOfferwall","placementId","openOfferwallWithUrl","url","openExternalBrowser","openAdjoeOfferwall","openOfferwallNestAds","isInitialized","getUserId","getIFA","getBannerInfo","addQuizCompletedListener","callback","addListener","addMissionCompletedListener","addMissionProgressedListener","addMissionRefreshedListener","sdk"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -65,6 +65,7 @@ declare class AdchainSDK {
65
65
  openOfferwallWithUrl(url: string, placementId?: string): Promise<SuccessResponse>;
66
66
  openExternalBrowser(url: string, placementId?: string): Promise<SuccessResponse>;
67
67
  openAdjoeOfferwall(placementId?: string): Promise<SuccessResponse>;
68
+ openOfferwallNestAds(placementId: string): Promise<SuccessResponse>;
68
69
  isInitialized(): Promise<boolean>;
69
70
  getUserId(): Promise<string>;
70
71
  getIFA(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1selfworld/adchain-sdk-react-native",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "AdChain SDK for React Native with Expo support",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -1,14 +1,18 @@
1
- const { withSettingsGradle } = require('@expo/config-plugins');
1
+ const {
2
+ withSettingsGradle,
3
+ withProjectBuildGradle,
4
+ } = require('@expo/config-plugins');
2
5
 
3
6
  /**
4
- * v4.1: settings.gradle에 JitPack repository만 추가
7
+ * v4.2: Android 빌드 설정
8
+ * - settings.gradle에 JitPack repository 추가
9
+ * - build.gradle에 adjoe Maven repository 추가
5
10
  * - AGP 8+ 호환
6
- * - dependencyResolutionManagement 사용
7
- * - 의존성은 라이브러리 모듈에서 선언 (중복 방지)
8
11
  */
9
12
  function withAdchainAndroid(config) {
10
- return withSettingsGradle(config, (config) => {
11
- let settingsGradle = config.modResults.contents;
13
+ // 1. settings.gradle에 JitPack 추가
14
+ config = withSettingsGradle(config, (cfg) => {
15
+ let settingsGradle = cfg.modResults.contents;
12
16
 
13
17
  // JitPack repository 추가
14
18
  if (!settingsGradle.includes('maven { url "https://jitpack.io" }')) {
@@ -48,9 +52,45 @@ dependencyResolutionManagement {
48
52
  }
49
53
  }
50
54
 
51
- config.modResults.contents = settingsGradle;
52
- return config;
55
+ cfg.modResults.contents = settingsGradle;
56
+ return cfg;
53
57
  });
58
+
59
+ // 2. build.gradle에 adjoe Maven repository 추가
60
+ config = withProjectBuildGradle(config, (cfg) => {
61
+ let buildGradle = cfg.modResults.contents;
62
+
63
+ // adjoe Maven repository 추가
64
+ if (!buildGradle.includes('releases.adjoe.io/maven')) {
65
+ // allprojects { repositories { ... } } 블록 찾기
66
+ const allprojectsMatch = buildGradle.match(
67
+ /(allprojects\s*\{\s*repositories\s*\{)/
68
+ );
69
+
70
+ if (allprojectsMatch) {
71
+ // allprojects 블록에 추가
72
+ buildGradle = buildGradle.replace(
73
+ allprojectsMatch[0],
74
+ `${allprojectsMatch[0]}\n maven { url 'https://releases.adjoe.io/maven' }`
75
+ );
76
+ } else {
77
+ // allprojects 블록이 없으면 파일 끝에 추가
78
+ buildGradle += `
79
+ // AdChain SDK - adjoe Maven repository
80
+ allprojects {
81
+ repositories {
82
+ maven { url 'https://releases.adjoe.io/maven' }
83
+ }
84
+ }
85
+ `;
86
+ }
87
+ }
88
+
89
+ cfg.modResults.contents = buildGradle;
90
+ return cfg;
91
+ });
92
+
93
+ return config;
54
94
  }
55
95
 
56
96
  module.exports = withAdchainAndroid;
package/src/index.tsx CHANGED
@@ -174,7 +174,7 @@ class AdchainSDK {
174
174
  '{\n' +
175
175
  ' "expo": {\n' +
176
176
  ' "plugins": [\n' +
177
- ' ["@adchain/expo-sdk", {\n' +
177
+ ' ["@1selfworld/adchain-sdk-react-native", {\n' +
178
178
  ' "android": {\n' +
179
179
  ' "appKey": "YOUR_ANDROID_APP_KEY",\n' +
180
180
  ' "appSecret": "YOUR_APP_SECRET"\n' +
@@ -282,6 +282,10 @@ class AdchainSDK {
282
282
  return AdchainSdk.openAdjoeOfferwall(placementId || '');
283
283
  }
284
284
 
285
+ async openOfferwallNestAds(placementId: string): Promise<SuccessResponse> {
286
+ return AdchainSdk.openOfferwallNestAds(placementId);
287
+ }
288
+
285
289
  // 6. Debug/Utility Methods (3개)
286
290
  async isInitialized(): Promise<boolean> {
287
291
  return AdchainSdk.isInitialized();