@1selfworld/adchain-sdk-react-native 1.0.13 → 1.0.16
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 +33 -4
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/adchain/exposdk/AdchainOfferwallViewManager.kt +15 -2
- package/lib/module/AdchainOfferwallView.js +7 -3
- package/lib/module/AdchainOfferwallView.js.map +1 -1
- package/lib/typescript/src/AdchainOfferwallView.d.ts +12 -0
- package/lib/typescript/src/AdchainOfferwallView.d.ts.map +1 -1
- package/package.json +1 -1
- package/plugin/src/withAdchainIOS.js +4 -4
- package/src/AdchainOfferwallView.tsx +26 -4
package/README.md
CHANGED
|
@@ -96,6 +96,33 @@ export default function App() {
|
|
|
96
96
|
- `openAdjoeOfferwall(placementId?)` - ADJOE 오퍼월 열기
|
|
97
97
|
- `openOfferwallNestAds(placementId)` - NestAds 오퍼월 열기
|
|
98
98
|
|
|
99
|
+
### 임베디드 오퍼월 컴포넌트
|
|
100
|
+
`AdchainOfferwallView`는 탭이나 화면에 직접 임베드할 수 있는 React Native 컴포넌트입니다.
|
|
101
|
+
|
|
102
|
+
```typescript
|
|
103
|
+
import { AdchainOfferwallView } from '@1selfworld/adchain-sdk-react-native';
|
|
104
|
+
|
|
105
|
+
<AdchainOfferwallView
|
|
106
|
+
placementId="tab_embedded_offerwall"
|
|
107
|
+
style={{ flex: 1 }}
|
|
108
|
+
onOfferwallOpened={() => console.log('Opened')}
|
|
109
|
+
onOfferwallClosed={() => console.log('Closed')}
|
|
110
|
+
onBackPressOnFirstPage={() => {
|
|
111
|
+
// Android: WebView가 첫 페이지일 때 백버튼 처리
|
|
112
|
+
// 앱 종료, 다른 탭 이동 등의 로직 구현
|
|
113
|
+
}}
|
|
114
|
+
onBackNavigated={() => {
|
|
115
|
+
// Android: WebView 내부에서 뒤로가기 성공
|
|
116
|
+
}}
|
|
117
|
+
/>
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**백버튼 이벤트 (Android, v1.0.15+)**:
|
|
121
|
+
- `onBackPressOnFirstPage`: WebView 스택에 페이지가 1개만 있을 때 (더 이상 뒤로갈 수 없음)
|
|
122
|
+
- `onBackNavigated`: WebView 스택에서 성공적으로 뒤로 이동했을 때
|
|
123
|
+
|
|
124
|
+
앱 개발자는 이 이벤트를 받아서 앱 종료, 탭 전환 등의 동작을 직접 구현할 수 있습니다.
|
|
125
|
+
|
|
99
126
|
### 퀴즈 & 미션
|
|
100
127
|
- `loadQuizList(unitId)` - 퀴즈 목록 로드
|
|
101
128
|
- `clickQuiz(unitId, quizId)` - 퀴즈 클릭
|
|
@@ -180,14 +207,16 @@ npx expo run:ios
|
|
|
180
207
|
|
|
181
208
|
### Pod install 실패 (iOS)
|
|
182
209
|
- Git URL이 올바른지 확인
|
|
183
|
-
- 태그 v1.0.
|
|
210
|
+
- 태그 v1.0.45가 존재하는지 확인
|
|
184
211
|
- 시도: `cd ios && rm -rf Pods Podfile.lock && pod install`
|
|
185
212
|
|
|
186
213
|
## 버전 호환성
|
|
187
214
|
|
|
188
|
-
| 패키지 버전 | Android SDK | iOS SDK | Swift | Expo SDK |
|
|
189
|
-
|
|
190
|
-
| 1.0.
|
|
215
|
+
| 패키지 버전 | Android SDK | iOS SDK | Swift | Expo SDK | 주요 변경사항 |
|
|
216
|
+
|------------|-------------|---------|-------|----------|--------------|
|
|
217
|
+
| 1.0.15 | v1.0.29 | v1.0.45 | 5.5 | 50-53 | 백버튼 이벤트, NestAds 지원 |
|
|
218
|
+
| 1.0.13 | v1.0.28 | v1.0.45 | 5.5 | 50-53 | NestAds 오퍼월 추가 |
|
|
219
|
+
| 1.0.0 | v1.0.28 | v1.0.45 | 5.5 | 50-53 | 초기 릴리즈 |
|
|
191
220
|
|
|
192
221
|
## 알려진 제한사항
|
|
193
222
|
|
package/android/build.gradle
CHANGED
|
@@ -35,5 +35,5 @@ dependencies {
|
|
|
35
35
|
implementation 'com.facebook.react:react-native:+'
|
|
36
36
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.21"
|
|
37
37
|
// AdChain Android SDK via JitPack
|
|
38
|
-
implementation 'com.github.1selfworld-labs:adchain-sdk-android:v1.0.
|
|
38
|
+
implementation 'com.github.1selfworld-labs:adchain-sdk-android:v1.0.29'
|
|
39
39
|
}
|
|
@@ -58,6 +58,17 @@ class AdchainOfferwallViewManager : SimpleViewManager<AdchainOfferwallView>() {
|
|
|
58
58
|
Log.d(TAG, "handleBackPress command")
|
|
59
59
|
val handled = root.handleBackPress()
|
|
60
60
|
Log.d(TAG, "handleBackPress result: $handled")
|
|
61
|
+
|
|
62
|
+
// Send event to React Native based on result
|
|
63
|
+
if (!handled) {
|
|
64
|
+
// WebView stack has only 1 item (first page)
|
|
65
|
+
Log.d(TAG, "Sending onBackPressOnFirstPage event")
|
|
66
|
+
sendEvent(root, "onBackPressOnFirstPage", Arguments.createMap())
|
|
67
|
+
} else {
|
|
68
|
+
// WebView stack has 2+ items (navigated back)
|
|
69
|
+
Log.d(TAG, "Sending onBackNavigated event")
|
|
70
|
+
sendEvent(root, "onBackNavigated", Arguments.createMap())
|
|
71
|
+
}
|
|
61
72
|
}
|
|
62
73
|
"sendDataResponse" -> { // NEW
|
|
63
74
|
val requestId = args?.getString(0) ?: ""
|
|
@@ -236,8 +247,10 @@ class AdchainOfferwallViewManager : SimpleViewManager<AdchainOfferwallView>() {
|
|
|
236
247
|
"onOfferwallError" to mapOf("registrationName" to "onOfferwallError"),
|
|
237
248
|
"onRewardEarned" to mapOf("registrationName" to "onRewardEarned"),
|
|
238
249
|
"onHeightChange" to mapOf("registrationName" to "onHeightChange"),
|
|
239
|
-
"onCustomEvent" to mapOf("registrationName" to "onCustomEvent"),
|
|
240
|
-
"onDataRequest" to mapOf("registrationName" to "onDataRequest")
|
|
250
|
+
"onCustomEvent" to mapOf("registrationName" to "onCustomEvent"),
|
|
251
|
+
"onDataRequest" to mapOf("registrationName" to "onDataRequest"),
|
|
252
|
+
"onBackPressOnFirstPage" to mapOf("registrationName" to "onBackPressOnFirstPage"),
|
|
253
|
+
"onBackNavigated" to mapOf("registrationName" to "onBackNavigated")
|
|
241
254
|
)
|
|
242
255
|
}
|
|
243
256
|
|
|
@@ -53,7 +53,9 @@ export const AdchainOfferwallView = /*#__PURE__*/React.forwardRef(({
|
|
|
53
53
|
onOfferwallError,
|
|
54
54
|
onRewardEarned,
|
|
55
55
|
onCustomEvent,
|
|
56
|
-
onDataRequest
|
|
56
|
+
onDataRequest,
|
|
57
|
+
onBackPressOnFirstPage,
|
|
58
|
+
onBackNavigated
|
|
57
59
|
}, ref) => {
|
|
58
60
|
const viewRef = useRef(null);
|
|
59
61
|
|
|
@@ -132,9 +134,11 @@ export const AdchainOfferwallView = /*#__PURE__*/React.forwardRef(({
|
|
|
132
134
|
onOfferwallClosed: onOfferwallClosed,
|
|
133
135
|
onOfferwallError: handleOfferwallError,
|
|
134
136
|
onRewardEarned: handleRewardEarned,
|
|
135
|
-
onCustomEvent: handleCustomEvent
|
|
137
|
+
onCustomEvent: handleCustomEvent,
|
|
138
|
+
onDataRequest: handleDataRequest,
|
|
139
|
+
onBackPressOnFirstPage: onBackPressOnFirstPage // NEW (v1.0.42)
|
|
136
140
|
,
|
|
137
|
-
|
|
141
|
+
onBackNavigated: onBackNavigated // NEW (v1.0.42)
|
|
138
142
|
});
|
|
139
143
|
});
|
|
140
144
|
export default AdchainOfferwallView;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useRef","requireNativeComponent","UIManager","findNodeHandle","Platform","jsx","_jsx","NativeOfferwallView","AdchainOfferwallView","forwardRef","placementId","style","onOfferwallOpened","onOfferwallClosed","onOfferwallError","onRewardEarned","onCustomEvent","onDataRequest","ref","viewRef","useImperativeHandle","current","viewId","OS","dispatchViewManagerCommand","error","console","handleOfferwallError","event","nativeEvent","handleRewardEarned","amount","handleCustomEvent","eventType","payload","handleDataRequest","requestId","requestType","params","responseData","undefined"],"sourceRoot":"../../src","sources":["AdchainOfferwallView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAChD,SACEC,sBAAsB,EACtBC,SAAS,EACTC,cAAc,EACdC,QAAQ,QACH,cAAc;;AAGrB;AACA;AACA;;AAmBA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;;AASA;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","requireNativeComponent","UIManager","findNodeHandle","Platform","jsx","_jsx","NativeOfferwallView","AdchainOfferwallView","forwardRef","placementId","style","onOfferwallOpened","onOfferwallClosed","onOfferwallError","onRewardEarned","onCustomEvent","onDataRequest","onBackPressOnFirstPage","onBackNavigated","ref","viewRef","useImperativeHandle","current","viewId","OS","dispatchViewManagerCommand","error","console","handleOfferwallError","event","nativeEvent","handleRewardEarned","amount","handleCustomEvent","eventType","payload","handleDataRequest","requestId","requestType","params","responseData","undefined"],"sourceRoot":"../../src","sources":["AdchainOfferwallView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,6 +31,18 @@ export interface AdchainOfferwallViewProps {
|
|
|
31
31
|
* @since 1.0.41
|
|
32
32
|
*/
|
|
33
33
|
onDataRequest?: (requestType: string, params: any) => any;
|
|
34
|
+
/**
|
|
35
|
+
* Callback when back button is pressed on the first page (WebView stack has only 1 item)
|
|
36
|
+
* This means the WebView cannot go back further, so the app should handle it (e.g., exit app or navigate to another tab)
|
|
37
|
+
* @since 1.0.45
|
|
38
|
+
*/
|
|
39
|
+
onBackPressOnFirstPage?: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* Callback when back button successfully navigated back in WebView (WebView stack has 2+ items)
|
|
42
|
+
* This means the WebView went back in its history
|
|
43
|
+
* @since 1.0.45
|
|
44
|
+
*/
|
|
45
|
+
onBackNavigated?: () => void;
|
|
34
46
|
}
|
|
35
47
|
/**
|
|
36
48
|
* AdChain Offerwall View Component
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdchainOfferwallView.d.ts","sourceRoot":"","sources":["../../../src/AdchainOfferwallView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAOjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA8C9C;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,oCAAoC;IACpC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,wCAAwC;IACxC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAI1C;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;IAE1D;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AdchainOfferwallView.d.ts","sourceRoot":"","sources":["../../../src/AdchainOfferwallView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAOjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA8C9C;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,oCAAoC;IACpC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,wCAAwC;IACxC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAI1C;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;IAE1D;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IAI1D;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAwBD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,oBAAoB,uFAuHhC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -28,10 +28,10 @@ function withAdchainIOS(config) {
|
|
|
28
28
|
if (targetMatch) {
|
|
29
29
|
const targetName = targetMatch[1];
|
|
30
30
|
const podDeclaration = `
|
|
31
|
-
# AdChain SDK (Git Pod) - v1.0.
|
|
31
|
+
# AdChain SDK (Git Pod) - v1.0.45
|
|
32
32
|
# CocoaPods Trunk에 없으므로 Git 방식 사용
|
|
33
33
|
# Swift 5.5 (5.9 optional 파라미터 버그 회피)
|
|
34
|
-
pod 'AdChainSDK', :git => 'https://github.com/1selfworld-labs/adchain-sdk-ios-release.git', :tag => 'v1.0.
|
|
34
|
+
pod 'AdChainSDK', :git => 'https://github.com/1selfworld-labs/adchain-sdk-ios-release.git', :tag => 'v1.0.45'
|
|
35
35
|
`;
|
|
36
36
|
|
|
37
37
|
podfile = podfile.replace(
|
|
@@ -41,8 +41,8 @@ function withAdchainIOS(config) {
|
|
|
41
41
|
} else {
|
|
42
42
|
// Fallback
|
|
43
43
|
const podDeclaration = `
|
|
44
|
-
# AdChain SDK (Git Pod) - v1.0.
|
|
45
|
-
pod 'AdChainSDK', :git => 'https://github.com/1selfworld-labs/adchain-sdk-ios-release.git', :tag => 'v1.0.
|
|
44
|
+
# AdChain SDK (Git Pod) - v1.0.45
|
|
45
|
+
pod 'AdChainSDK', :git => 'https://github.com/1selfworld-labs/adchain-sdk-ios-release.git', :tag => 'v1.0.45'
|
|
46
46
|
`;
|
|
47
47
|
|
|
48
48
|
podfile = podfile.replace(
|
|
@@ -86,6 +86,22 @@ export interface AdchainOfferwallViewProps {
|
|
|
86
86
|
* @since 1.0.41
|
|
87
87
|
*/
|
|
88
88
|
onDataRequest?: (requestType: string, params: any) => any;
|
|
89
|
+
|
|
90
|
+
// ===== NEW: Back Button Handling (v1.0.45+) =====
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Callback when back button is pressed on the first page (WebView stack has only 1 item)
|
|
94
|
+
* This means the WebView cannot go back further, so the app should handle it (e.g., exit app or navigate to another tab)
|
|
95
|
+
* @since 1.0.45
|
|
96
|
+
*/
|
|
97
|
+
onBackPressOnFirstPage?: () => void;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Callback when back button successfully navigated back in WebView (WebView stack has 2+ items)
|
|
101
|
+
* This means the WebView went back in its history
|
|
102
|
+
* @since 1.0.45
|
|
103
|
+
*/
|
|
104
|
+
onBackNavigated?: () => void;
|
|
89
105
|
}
|
|
90
106
|
|
|
91
107
|
/**
|
|
@@ -99,8 +115,10 @@ interface NativeOfferwallViewProps {
|
|
|
99
115
|
onOfferwallError?: (event: OfferwallErrorEvent) => void;
|
|
100
116
|
onRewardEarned?: (event: OfferwallRewardEvent) => void;
|
|
101
117
|
onHeightChange?: (event: OfferwallHeightChangeEvent) => void;
|
|
102
|
-
onCustomEvent?: (event: OfferwallCustomEvent) => void;
|
|
103
|
-
onDataRequest?: (event: OfferwallDataRequestEvent) => void;
|
|
118
|
+
onCustomEvent?: (event: OfferwallCustomEvent) => void;
|
|
119
|
+
onDataRequest?: (event: OfferwallDataRequestEvent) => void;
|
|
120
|
+
onBackPressOnFirstPage?: () => void; // NEW (v1.0.45)
|
|
121
|
+
onBackNavigated?: () => void; // NEW (v1.0.45)
|
|
104
122
|
}
|
|
105
123
|
|
|
106
124
|
// Require native component
|
|
@@ -139,6 +157,8 @@ export const AdchainOfferwallView = React.forwardRef<
|
|
|
139
157
|
onRewardEarned,
|
|
140
158
|
onCustomEvent,
|
|
141
159
|
onDataRequest,
|
|
160
|
+
onBackPressOnFirstPage,
|
|
161
|
+
onBackNavigated,
|
|
142
162
|
},
|
|
143
163
|
ref
|
|
144
164
|
) => {
|
|
@@ -235,8 +255,10 @@ export const AdchainOfferwallView = React.forwardRef<
|
|
|
235
255
|
onOfferwallClosed={onOfferwallClosed}
|
|
236
256
|
onOfferwallError={handleOfferwallError}
|
|
237
257
|
onRewardEarned={handleRewardEarned}
|
|
238
|
-
onCustomEvent={handleCustomEvent}
|
|
239
|
-
onDataRequest={handleDataRequest}
|
|
258
|
+
onCustomEvent={handleCustomEvent}
|
|
259
|
+
onDataRequest={handleDataRequest}
|
|
260
|
+
onBackPressOnFirstPage={onBackPressOnFirstPage} // NEW (v1.0.42)
|
|
261
|
+
onBackNavigated={onBackNavigated} // NEW (v1.0.42)
|
|
240
262
|
/>
|
|
241
263
|
);
|
|
242
264
|
}
|