React-native-iap: [Android] getProductsλŠ” 항상 빈 배열을 λ°˜ν™˜ν•©λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 04μ›” 25일  Β·  19μ½”λ©˜νŠΈ  Β·  좜처: dooboolab/react-native-iap

react-native-iap 버전

0.3.15

였λ₯˜κ°€ λ°œμƒν•œ ν”Œλž«νΌ (IOS λ˜λŠ” Android λ˜λŠ” λ‘˜ λ‹€?)

기계적 인쑰 인간

μ˜ˆμƒλ˜λŠ” 행동

λͺ¨λ“  μ œν’ˆ λ°›κΈ°

μ‹€μ œ 행동

λͺ¨λ‘ iOSμ—μ„œ 잘 μž‘λ™ν•˜μ§€λ§Œ getProductsλŠ” 항상 Androidμ—μ„œ 빈 배열을 λ°˜ν™˜ν•©λ‹ˆλ‹€.
ꡬ성 문제라고 μƒκ°ν•˜μ§€λ§Œ 각 단계λ₯Ό λ”°λžμŠ΅λ‹ˆλ‹€ ...

결제 κΆŒν•œμ΄μžˆλŠ” APK μ—…λ‘œλ“œ / 판맀자 계정 μ„€μ • / μ•± λ‚΄ ꡬ맀 생성 ...

πŸ™ help wanted

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

@vadermemo @martinberbesson μ•ˆλ…•ν•˜μ„Έμš” ~ itemSkus λŒ€ν•œ js μ½”λ“œλ₯Ό κ³΅μœ ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ? μ•„λž˜ μ½”λ“œμ™€ 같이 μ„€μ • ν•˜μ…¨λ‚˜μš”?

export const PURCHASE_ITEMS = Platform.select({
  ios: [
    'productid_1',
    'productid_2',
  ],
  android: [
    'productid_1',
    'productid_2',
  ],
});

λ˜ν•œ μ΄ˆμ•ˆ μ•± ν…ŒμŠ€νŠΈλŠ” 더 이상 μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ°€μ΄λ“œλ₯Ό μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€. 앱을 μ•ŒνŒŒ λ˜λŠ” 베타 채널에 κ²Œμ‹œν•΄μ•Όν•©λ‹ˆλ‹€.

λͺ¨λ“  19 λŒ“κΈ€

여기에 같은 문제

λ‚΄ 슀 λ‹ˆνŽ« :

  RNIap.prepare().then(responsePrepare => {
    console.log("=============>responsePrepare:" + responsePrepare);
    RNIap.getProducts(itemSkus).then(response => {
        this.setState({ items  : response});
        console.log("=============>response:" + JSON.stringify(response));
    });
  });

adb.logcat (Android)에 λŒ€ν•œ λ‚΄ 응닡

208 28473 28524 I ReactNativeJS : appParams : { "rootTag": 11}λ₯Ό μ‚¬μš©ν•˜μ—¬ "testingIap"μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹€ν–‰ μ€‘μž…λ‹ˆλ‹€. __DEV__ === true, 개발 μˆ˜μ€€ κ²½κ³ λŠ” ON, μ„±λŠ₯ μ΅œμ ν™”λŠ” OFF
04-25 17 : 04 : 04.228 1140 1150 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.230 1140 2059 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.232 24842 24933 I Finsky : [4061] com.google.android.finsky.billing.iab.ab.b (46) : com.projectbundle : 첫 번째 κ³„μ •μ˜ 계정-[uuAJBL1tLX2MAj69S-olEslXXXX]
04-25 17 : 04 : 04.233 28473 28473 D RNIapModule : 결제 ν΄λΌμ΄μ–ΈνŠΈ μ€€λΉ„
04-25 17 : 04 : 04.303 28473 28524 I ReactNativeJS : =============> responsePrepare : null
04-25 17 : 04 : 04.308 28473 28524 I ReactNativeJS : =============> responsePrepare : null
04-25 17 : 04 : 04.328 1140 2107 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.330 1140 1896 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.339 1140 2095 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.340 1140 1679 I AccountManagerService : getTypesVisibleToCaller : isPermitted? 진싀
04-25 17 : 04 : 04.343 24842 24854 I Finsky : [4020] com.google.android.finsky.billing.iab.ab.b (46) : com.projectbundle : 첫 번째 κ³„μ •μ˜ 계정-[uuAJBL1tLX2MAj69S-olEslXXXX]
04-25 17 : 04 : 04.347 24842 24853 I Finsky : [4019] com.google.android.finsky.billing.iab.ab.b (46) : com.projectbundle : 첫 번째 κ³„μ •μ˜ 계정-[uuAJBL1tLX2MAj69S-olEslXXXX]
04-25 17 : 04 : 04.626 28473 28525 D RNIapModule : responseCode : 0
04-25 17 : 04 : 04.628 28473 28525 D RNIapModule : responseCode : 0
04-25 17 : 04 : 04.669 28473 28524 I ReactNativeJS : =============> 응닡 : []
04-25 17 : 04 : 04.693 28473 28524 I ReactNativeJS : =============> 응닡 : []

κ·ΈλŸ¬λ‚˜ iOSμ—μ„œλŠ” 데이터 ν˜•μ‹μ΄ 잘 λ§žλŠ” 배열을 μ–»μŠ΅λ‹ˆλ‹€.

PD1 https://medium.com/@dooboolab/react -native-in-app-purchase-121622d26b67μ—μ„œ μΆ”μ²œμ„ λ°›μ•˜μŠ΅λ‹ˆλ‹€.

PD2 "당신이 λ‚˜μ˜ μœ μΌν•œ 희망 인 μ˜€λΉ„μ™„ μΌ€λ…ΈλΉ„λ₯Ό λ„μ™€μ£Όμ„Έμš”"

Package.json 슀 λ‹ˆνŽ« :
"쒅속성": {
"λ°˜μ‘": "16.3.1",
"λ°˜μ‘ λ„€μ΄ν‹°λΈŒ": "0.55.3",
"react-native-iap": "^ 0.3.18"
},

@vadermemo @martinberbesson μ•ˆλ…•ν•˜μ„Έμš” ~ itemSkus λŒ€ν•œ js μ½”λ“œλ₯Ό κ³΅μœ ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ? μ•„λž˜ μ½”λ“œμ™€ 같이 μ„€μ • ν•˜μ…¨λ‚˜μš”?

export const PURCHASE_ITEMS = Platform.select({
  ios: [
    'productid_1',
    'productid_2',
  ],
  android: [
    'productid_1',
    'productid_2',
  ],
});

λ˜ν•œ μ΄ˆμ•ˆ μ•± ν…ŒμŠ€νŠΈλŠ” 더 이상 μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ°€μ΄λ“œλ₯Ό μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€. 앱을 μ•ŒνŒŒ λ˜λŠ” 베타 채널에 κ²Œμ‹œν•΄μ•Όν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš” @dooboolab

이것은 λ‚΄ λ°μ΄ν„°μž…λ‹ˆλ‹€
const itemSkus = Platform.select ({
ios : [
'com.iap.cart',
'com.iap.doublecoins'
],
android : [
'더블',
'cart_1500'
],
});

μΉœμ• ν•˜λŠ”

PD1 λ‚΄ 앱은 μ•ŒνŒŒ 버전인데 μ œν’ˆμ„λ°›μ§€ λͺ»ν•©λ‹ˆλ‹€.
PD2 react-native-billingκ³Ό 같은 λ‹€λ₯Έ npm을 μ‚¬μš©ν•˜λ©΄ μ œν’ˆμ„ 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

@vadermemo 이것은 λ‚˜μ—κ²Œ 정말 λ‚˜μœ souds .. μ£„μ†‘ν•©λ‹ˆλ‹€. λ‚΄ ν™˜κ²½μ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€. λ‚˜λŠ” 더 λ§Žμ€ tommorowλ₯Ό λ””λ²„κ·Έν•˜κ³  λ°˜λ“œμ‹œ tommorow둜 λŒμ•„κ°ˆ κ²ƒμž…λ‹ˆλ‹€! λ˜ν•œ μ§„μˆ μ„ ν¬μ°©ν•˜κ³  거기에 무엇이 λ‚˜νƒ€λ‚˜λŠ”μ§€ λ³Ό 수 μžˆμŠ΅λ‹ˆκΉŒ?

μ•ŒνŒŒ λ¦΄λ¦¬μŠ€κ°€ ν•„μš”ν•œ 것 κ°™μ•„μš” ... 결제 κΆŒν•œμ΄μžˆλŠ” APKλ₯Ό μ—…λ‘œλ“œν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλŠ” μΆ©λΆ„ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€

@dooboolab κΈ€μŽ„, λ‹Ήμ‹ μ—κ²Œ λ„μ›€μ΄λ˜λŠ” 것이 μžˆλ‹€λ©΄ μ•„λ§ˆλ„ λ‹€μŒ μš”μ μž…λ‹ˆλ‹€.

react-native-billing에 ꡬ성을 넣을 λ•Œ λ¦¬μ†ŒμŠ€ 파일 "string.xml"에 param string name = "RNB_GOOGLE_PLAY_LICENSE_KEY"λ₯Ό λ„£μ—ˆμŠ΅λ‹ˆλ‹€.
ν•˜μ§€λ§Œ react-native-iapμ—μ„œλŠ”μ΄ 맀개 λ³€μˆ˜κ°€ μž‘λ™ν•˜λŠ” 것을 λ³Ό 수 μ—†μŠ΅λ‹ˆλ‹€.

ν•„μš”ν•œ try-catchλŠ” λ‹€μŒ 둜그λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

  1. λ‚΄ ν•­λͺ© λ³€κ²½

const itemSkus = Platform.select ({
ios : [
'predictorcart_1500',
],
android : [
'predictorcart_1500',
'android.test.purchased',
'android.test.canceled',
'android.test.refunded',
'android.test.item_unavailable',
],
});

  1. componentDidMount λ³€κ²½

    비동기 componentDidMount () {
    {
    기닀리고 RNIap.prepare ();
    await this.getItems ();

    }
    catch (err) {
    console.warn (err.code, err.message);
    }
    }

  2. κ°€μ Έ 였기 데이터 λ³€κ²½

    getProductDetails = async () => {
    {
    const μ œν’ˆ = await RNIap.getProducts (itemSkus);
    console.log ( '=======> μ œν’ˆ ::::', μ œν’ˆ);
    this.setState ({productDetails : products});
    } catch (err) {
    console.warn (err.code, err.message);
    }
    }

  3. λ²„νŠΌμ„ λ„£μ–΄
    \

  4. 기기에 μ•± λ„£κΈ°
    λ°˜μ‘ λ„€μ΄ν‹°λΈŒ μ‹€ν–‰ μ•ˆλ“œλ‘œμ΄λ“œ --variant = release

6. λ§ˆμ§€λ§‰μœΌλ‘œ λ‘œκ·ΈλŠ” λ‹€μŒμž…λ‹ˆλ‹€.
04-26 12 : 53 : 11.335 16749 16759 I Finsky : [11707] com.google.android.finsky.billing.iab.ab.b (46) : com.projectbundle : 첫 번째 κ³„μ •μ˜ 계정-[uuAJBL1tLX2MAj69S-olEl331212]
04-26 12 : 53 : 11.401 226 1177 V audio_hw_primary : do_output_standby in
04-26 12 : 53 : 11.409 20362 20432 D RNIapModule : responseCode : 0
04-26 12 : 53 : 11.426 226 1177 W audio_hw_primary : do_output_standby.mode : 0
04-26 12 : 53 : 11.426 226 1177 V audio_hw_primary : do_output_standby in out
04-26 12 : 53 : 11.427 1140 2106 D PowerManagerService : releaseWakeLockInternal : lock = 87714678 [AudioMix], ν”Œλž˜κ·Έ = 0x0, total_time = 3166ms
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : '=======> Products ::::', [{description : 'DescripciΓ³n de muestra para el producto : android.test.canceled.',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 제λͺ© : 'TΓ­tulo de muestra',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : localizedPrice : '$ 18.65',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : μœ ν˜• : 'inapp',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 톡화 : 'MXN',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 가격 : '18 .65 ',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : productId : 'android.test.canceled'},
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : {description : 'DescripciΓ³n de muestra para el producto : android.test.item_unavailable.',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 제λͺ© : 'TΓ­tulo de muestra',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : localizedPrice : '$ 18.65',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : μœ ν˜• : 'inapp',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 톡화 : 'MXN',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 가격 : '18 .65 ',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : productId : 'android.test.item_unavailable'},
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : {μ„€λͺ… : 'DescripciΓ³n de muestra para el producto : android.test.purchased.',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 제λͺ© : 'TΓ­tulo de muestra',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : localizedPrice : '$ 18.65',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : μœ ν˜• : 'inapp',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 톡화 : 'MXN',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 가격 : '18 .65 ',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : productId : 'android.test.purchased'},
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : {μ„€λͺ… : 'DescripciΓ³n de muestra para el producto : android.test.refunded.',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 제λͺ© : 'TΓ­tulo de muestra',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : localizedPrice : '$ 18.65',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : μœ ν˜• : 'inapp',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 톡화 : 'MXN',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : 가격 : '18 .65 ',
04-26 12 : 53 : 11.444 20362 20431 I ReactNativeJS : productId : 'android.test.refunded'}]

@martinberbesson μ•ŒνŒŒ λ¦΄λ¦¬μŠ€μ— 앱이 μžˆλŠ”λ° μ œν’ˆμ„ 얻을 수 μ—†μŠ΅λ‹ˆλ‹€. λ‹€λ₯Έ 것, μ•„λ§ˆλ„ react-native-iap λ˜λŠ” google μ½˜μ†”μ˜ ꡬ성이라고 μƒκ°ν•©λ‹ˆλ‹€.

νŠΈμœ— λ‹΄μ•„ κ°€κΈ°

λ™μΌν•œ λ‹¨κ³„λ‘œ λ‹€λ₯Έ 앱을 λ§Œλ“€μ—ˆκ³  앱이 iOS 및 Androidμ—μ„œ μž‘λ™ν•©λ‹ˆλ‹€ !!. 믿을 μˆ˜κ°€ μ—†μ–΄μš”.

μ΄μœ λŠ” λͺ¨λ₯΄κ² μ§€λ§Œ μ½”λ“œ λ‚˜ Google μ½˜μ†”μ˜ ꡬ성이라고 μƒκ°ν•©λ‹ˆλ‹€.

PD λ‚˜λŠ” μ •ν™•ν•œ itemSkusλ₯Ό μ–»κΈ° μœ„ν•΄ 5 μ‹œκ°„μ„ κΈ°λ‹€λ Έλ‹€.
PD2 이전 앱은 24 μ‹œκ°„ λ™μ•ˆμ—λ„ itemsSkusλ₯Ό 얻지 λͺ»ν•©λ‹ˆλ‹€.
PD3 @dooboolab 이제 쑰용히 잘 수 μžˆμŠ΅λ‹ˆλ‹€. :)
PD4 ꡬ맀 ν”„λ‘œμ„ΈμŠ€λ₯Ό κ°œλ°œν•  κ²ƒμž…λ‹ˆλ‹€.

μΉœμ• ν•˜λŠ”,

@vadermemo 그것이 μž‘λ™ν•˜κ³  μžˆλ‹€λŠ” 것을 기쁘게 μƒκ°ν•©λ‹ˆλ‹€. λ˜ν•œ v3 인 Android 용 μ΅œμ‹  iap λͺ¨λ“ˆμ˜ 경우 string.xml λ‹€λ₯Έ ν•­λͺ©μ„ 넣을 ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.

# 124에 따라 λ‚˜λŠ” 이것이 μ—¬μ „νžˆ λ°œμƒν•˜κ³  μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€-적어도 κΈ°μ‘΄ μ•±μ˜ κ²½μš°μ—λ„ 이것에 λŒ€ν•œ 해결책이 있으면 쒋을 κ²ƒμž…λ‹ˆλ‹€.

μ—¬μ „νžˆμ΄ 문제λ₯Ό κ²ͺκ³ μžˆλŠ” μ‚¬λžŒμ΄λΌλ©΄ λ¨Όμ € https://stackoverflow.com/a/35132936/1374827을 읽고 ν•΄λ‹Ή κ²Œμ‹œλ¬Όμ— μ„€λͺ… 된 λͺ¨λ“  μš”κ΅¬ 사항을 μΆ©μ‘±ν–ˆλŠ”μ§€ ν™•μΈν•΄μ•Όν•©λ‹ˆλ‹€.

κ·Έ λͺ¨λ“  것이 μ’‹λ‹€λ©΄ μ μ ˆν•œ ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜κ³  μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€. μ €μ—κ²ŒλŠ” ꡬ독 인앱 ꡬ맀 만 μ‚¬μš©ν•˜λŠ” 앱이 μžˆμ—ˆμ§€λ§Œ μ‹€μˆ˜λ‘œ RNIap.getProducts ν˜ΈμΆœν–ˆκ³  λ¬Όλ‘  빈 배열을 λ˜μ°Ύμ•˜μŠ΅λ‹ˆλ‹€. λŒ€μ‹  RNIap.getSubscriptions μ „ν™”ν•΄μ•Όν–ˆκ³  ꡬ독이 λ°˜ν™˜λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

같은 λ§₯λ½μ—μ„œ ꡬ독을 κ΅¬λ§€ν•˜λŠ” 경우 RNIap.buySubscription , μ œν’ˆμ„ κ΅¬λ§€ν•˜λŠ” 경우 RNIap.buyProduct ν•΄μ•Όν•©λ‹ˆλ‹€.

μ΄κ²ƒμœΌλ‘œ 레슬링 ν•œ ν›„ λ‚΄ λ¬Έμ œλŠ” μ•ˆλ“œλ‘œμ΄λ“œμ— λŒ€ν•œ κ²½ν—˜μ΄ μ—†λ‹€λŠ” 것이 λ°ν˜€μ‘ŒμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” devμ—μ„œ νŒ¨ν‚€μ§€ 이름을 μ—‰λ§μœΌλ‘œ λ§Œλ“€κ³  μž₯μΉ˜μ—μ„œ 잘 μ‹€ν–‰λ˜λŠ” λ™μ•ˆ νŒ¨ν‚€μ§€ 이름이 μ™„λ²½ν•˜κ²Œ μ„€μ •λ˜μ§€ μ•Šμ•„ 빈 배열을 λ°˜ν™˜ν–ˆμŠ΅λ‹ˆλ‹€. λ‹€μŒ ν›„ λ‹€μŒ 단계 및 이듀을 그것은 λͺ¨λ“  쒋은 μ°Ύκ³  μžˆμŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” λ˜ν•œ 빈 배열을 μ–»μŠ΅λ‹ˆλ‹€.
그리고 https://developer.android.com/google/play/billing/billing_testing#draft_apps λ¬Έμ„œμ™€ ν˜Όλ™λ©λ‹ˆλ‹€. ν…ŒμŠ€νŠΈ 계정이 ν•„μš”ν•˜κ³  ν…ŒμŠ€ν„°λ₯Ό μΆ”κ°€ν•˜λ―€λ‘œ λˆ„κ΅¬λ“ μ§€ 도와 쀄 수 μžˆμŠ΅λ‹ˆλ‹€.

감사!

같은

@bharatidudhjiya @tmjordan μ—¬λŸ¬λΆ„μ΄ ꡬ성 λ¬Έμ œμ— μ§λ©΄ν•˜κ³  μžˆλ‹€λ©΄, λ¨Όμ € 순수 μ•ˆλ“œλ‘œμ΄λ“œ iap ν”„λ‘œμ νŠΈλ₯Ό μ‹œλ„ν•΄λ³΄κ³  μ œλŒ€λ‘œ μž‘λ™ν•˜λŠ”μ§€ ν™•μΈν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. λ˜ν•œ Android의 iap sdkλ₯Ό 더 잘 μ΄ν•΄ν•˜λŠ” 데 λ„μ›€μ΄λ©λ‹ˆλ‹€.

@hyochan κ°μ‚¬ν•©λ‹ˆλ‹€, 쒋은 μƒκ°μž…λ‹ˆλ‹€. λ‚˜λŠ” κ·Έλ ‡κ²Œ ν•  것이닀

@tmjordan 이것은 κ½€ μ˜€λž˜λ˜μ—ˆμ§€λ§Œ κΈ°λ³Έ 섀정에 도움 이 될 수 μžˆμŠ΅λ‹ˆλ‹€.

κ³ λ§ˆμ›Œμš” @hyochan

λ‚΄κ°€ ν•΄κ²° ν–ˆμ–΄! 이 버전을 μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

react-native-iap: ^4.3.0
react-native: 0.60.5

κ·Έλƒ₯ μ΄λ ‡κ²Œ ν•΄

const itemSkus = Platform.select({
    ios: [
        '100coins' // just remove bundle id from product id
    ],
    android: [
        '100coins' // just remove bundle id from product id
    ]
});

μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— λŒ€ν•œ μ˜¬λ°”λ₯Έ νŒ¨ν‚€μ§€ 이름이 μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€.

그리고 react-native λͺ…λ Ήμ—μ„œ λ³€κ²½ ν•œ 경우. μ—¬μ „νžˆ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μˆ˜λ™μœΌλ‘œ ν•œ λ‹€μŒ android ν΄λ”μ—μ„œ ./gradlew clean을 μ‚¬μš©ν•˜μ—¬ ν”„λ‘œμ νŠΈλ₯Ό μ •λ¦¬ν•΄μ•Όν•©λ‹ˆλ‹€.

κ·Έ 후에 그것을 μ‹œλ„ν•˜μ‹­μ‹œμ˜€.

ν•΄ν”Ό μ½”λ”©.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰