airbridge-react-native-sdk-restricted 4.1.6 → 4.2.0

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/qa/source/App.js CHANGED
@@ -5,7 +5,7 @@ import { storage } from './common/Storage'
5
5
  import { fcmService } from './common/FCMService'
6
6
  import { NavigationContainer } from '@react-navigation/native'
7
7
  import StackNavigation from './navigations/Stack'
8
- import { Airbridge } from 'airbridge-react-native-sdk'
8
+ import { Airbridge } from 'airbridge-react-native-sdk-restricted'
9
9
 
10
10
  import MessageDialog from './component/MessageDialog'
11
11
  import { qaLog } from './common/QALog'
@@ -1,9 +1,10 @@
1
- import { Platform } from 'react-native'
1
+ import { Platform, NativeModules } from 'react-native'
2
2
 
3
3
  import messaging from '@react-native-firebase/messaging'
4
4
  import { Airbridge } from 'airbridge-react-native-sdk-restricted'
5
5
 
6
6
  import { storage } from './Storage'
7
+ import { qaLog } from './QALog'
7
8
 
8
9
  class FCMService {
9
10
 
@@ -54,7 +55,7 @@ class FCMService {
54
55
  }
55
56
 
56
57
  getIosToken = async () => {
57
- console.log('[App] onRegister getIosToken')
58
+ qaLog('[App] onRegister getIosToken')
58
59
 
59
60
  try {
60
61
  if (!messaging().isDeviceRegisteredForRemoteMessages) {
@@ -62,19 +63,48 @@ class FCMService {
62
63
  }
63
64
 
64
65
  const fcmToken = await messaging().getToken()
65
- if (fcmToken != null) {
66
+ if (fcmToken) {
66
67
  storage.set('fcmToken', fcmToken);
67
68
  }
68
69
 
69
70
  const apnsToken = await messaging().getAPNSToken()
70
- console.log('[App] apns token : ' + apnsToken)
71
+ qaLog('[App] getIosToken ApnsToken : ' + apnsToken)
71
72
  if (apnsToken) {
72
73
  storage.set('apnsToken', apnsToken);
73
74
  Airbridge.registerPushToken(apnsToken)
74
75
  }
75
76
  }
76
77
  catch (error) {
77
- console.log('[App] ios error::', error)
78
+ qaLog('[App] ios error::', error)
79
+ this.getApnsToken()
80
+ }
81
+ }
82
+
83
+ getApnsToken = async () => {
84
+ qaLog('[App] onRegister getApnsToken')
85
+
86
+ let shouldStop = false
87
+ const repeatCount = 5
88
+ const freq = 500
89
+
90
+ for (let i = 0; i < repeatCount; i++) {
91
+ setTimeout(async () => {
92
+ if (shouldStop) return
93
+
94
+ try {
95
+ const response = await NativeModules.IdentifiersInteractor.apnsToken();
96
+ const jsonData = JSON.parse(response);
97
+ const apnsToken = jsonData['data']
98
+ qaLog(`[App] getApnsToken ApnsToken (${i}) : ${apnsToken}`)
99
+ if (apnsToken) {
100
+ shouldStop = true
101
+ storage.set('apnsToken', apnsToken);
102
+ Airbridge.registerPushToken(apnsToken)
103
+ }
104
+ } catch (error) {
105
+
106
+ }
107
+ }, i * freq);
78
108
  }
79
109
  }
80
110
 
@@ -6,6 +6,7 @@ import {
6
6
  androidSDKVersion,
7
7
  iOSSDKVersion,
8
8
  reactNativeSDKVersion,
9
+ buildNumber,
9
10
  branchName,
10
11
  commitRev,
11
12
  } from '../common/BuildParameter.generated'
package/script/BuildQA.sh CHANGED
@@ -14,12 +14,9 @@ npm run build
14
14
  cd qa
15
15
  npm clean-install
16
16
  )
17
- if [[ $BUILD_QA != ios ]] && [[ $BUILD_QA != android ]]; then
18
- BUILD_QA=all
19
- fi
20
17
 
21
18
  # build ios
22
- if [[ $BUILD_QA == all ]] || [[ $BUILD_QA == ios ]]; then
19
+ if [[ $BUILD_QA == ios ]]; then
23
20
  (
24
21
  cd qa/ios
25
22
  pod install
@@ -45,11 +42,11 @@ if [[ $BUILD_QA == all ]] || [[ $BUILD_QA == ios ]]; then
45
42
  -exportPath "$BUFFER_DIRECTORY/ios-application" \
46
43
  -exportOptionsPlist "$BUFFER_DIRECTORY/ios-application.plist" \
47
44
  -allowProvisioningUpdates
48
- cp -r "$BUFFER_DIRECTORY/ios-application/AirbridgeQA.ipa" 'build/qa/ios-application.ipa'
45
+ cp -r "$BUFFER_DIRECTORY/ios-application/AirbridgeQA.ipa" "build/qa/$BUILD_OUTPUT"
49
46
  fi
50
47
 
51
48
  # build android
52
- if [[ $BUILD_QA == all ]] || [[ $BUILD_QA == android ]]; then
49
+ if [[ $BUILD_QA == android ]]; then
53
50
  echo "$KEYSTORE" \
54
51
  | base64 --decode \
55
52
  > "$BUFFER_DIRECTORY/android-application.keystore"
@@ -58,7 +55,7 @@ if [[ $BUILD_QA == all ]] || [[ $BUILD_QA == android ]]; then
58
55
  cd qa/android
59
56
  ./gradlew app:assembleRelease
60
57
  )
61
- cp -r 'qa/android/app/build/outputs/apk/release/app-release.apk' 'build/qa/android-application.apk'
58
+ cp -r 'qa/android/app/build/outputs/apk/release/app-release.apk' "build/qa/$BUILD_OUTPUT"
62
59
  fi
63
60
 
64
61
  # clean environment
@@ -23,6 +23,7 @@ perl -i -pe 's/implementation "io.airbridge:sdk-android:/implementation "io.airb
23
23
  echo 'Change qa'
24
24
  perl -i -pe 's/"airbridge-react-native-sdk"/"airbridge-react-native-sdk-restricted"/g' "$ROOT_DIRECTORY/qa/package.json"
25
25
  perl -i -pe 's/"airbridge-react-native-sdk"/"airbridge-react-native-sdk-restricted"/g' "$ROOT_DIRECTORY/qa/package-lock.json"
26
+ perl -i -pe "s/from 'airbridge-react-native-sdk'/from 'airbridge-react-native-sdk-restricted'/g" "$ROOT_DIRECTORY/qa/source/App.js"
26
27
  perl -i -pe "s/from 'airbridge-react-native-sdk'/from 'airbridge-react-native-sdk-restricted'/g" "$ROOT_DIRECTORY"/qa/source/**/*
27
28
  perl -i -pe "s/= 'airbridge-ios-sdk'/= 'airbridge-ios-sdk-restricted'/g" "$ROOT_DIRECTORY/qa/ios/InternalLibrary/airbridge-ios-sdk.podspec"
28
29
  perl -i -pe 's/Airbridge.zip"/AirbridgeRestricted.zip"/g' "$ROOT_DIRECTORY/qa/ios/InternalLibrary/airbridge-ios-sdk.podspec"
@@ -312,7 +312,7 @@ export class Airbridge {
312
312
  * @return `true` if the tracking feature of SDK tracking is enabled,`false` otherwise.
313
313
  */
314
314
  static isTrackingEnabled(): Promise<boolean> {
315
- return this.#dependency.switchModule.isSDKEnabled()
315
+ return this.#dependency.switchModule.isTrackingEnabled()
316
316
  }
317
317
 
318
318
  // web interface