React-native-iap: Amazon Appstore IAP์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€

์— ๋งŒ๋“  2020๋…„ 02์›” 26์ผ  ยท  35์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: dooboolab/react-native-iap

Amazon Appstore IAP API ์— ๋Œ€ํ•œ ์ง€์›์ด ์žˆ์œผ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๐ŸŽฏ feature ๐Ÿ“ข announcement ๐Ÿšถ๐Ÿป stale

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๊ณผ๊ฑฐ์— ์ด๋ฅผ ์ง€์›ํ•˜๋Š” ์ž‘์—…์ด ์žˆ๋Š” ๊ฒƒ์„ ๋ณด์•˜์ง€๋งŒ ๊ตฌ์‹์œผ๋กœ ๋ณด์ด๋ฉฐ ํ˜„์žฌ react-native-iap ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
https://github.com/dooboolab/react-native-iap/issues/370
๊ทธ๋ž˜์„œ ๋‚˜๋Š” https://github.com/nochkin/react-native-iap/tree/amazon-iap ์—์„œ ๋‚ด ์ž์‹ ์˜ ํฌํฌ๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ์ž์‹ ์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ PR์„ ์ž‘์„ฑํ•˜๊ธฐ ์ „์— ์‹ค์ œ ์•ŒํŒŒ/๋ฒ ํƒ€ ํ…Œ์Šคํ„ฐ๊ฐ€ ํŠน์ • ์—ฃ์ง€ ์ผ€์ด์Šค๋ฅผ ๊ฒ€ํ† ํ•˜๊ณ  ์ ์ ˆํ•˜๊ฒŒ ์—ฐ๋งˆํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚ด ์•ฑ์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋งค์šฐ ๋†’๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ์›๋ž˜์˜ react-native-iap API ์•ˆ์— ๋จธ๋ฌผ๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„์ง ํ•˜์ง€ ์•Š์€ ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค(๋ˆ„๊ตฐ๊ฐ€ ์ œ๋Œ€๋กœ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋ฉด ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).

๋‚ด ํฌํฌ์˜ ์ฃผ์š” ๋””์ž์ธ ๊ฒฐ์ • ์ค‘ ํ•˜๋‚˜๋Š” Google๊ณผ Amazon์„ ๊ฐ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์žฅ์น˜ ๋ชจ๋ธ/์ œ์กฐ์—…์ฒด๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž๊ฐ€ Google Play๋ฅผ Kindle์— ์„ค์น˜ํ•˜๊ณ  Google์„ ํ†ตํ•ด ์•ฑ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ข‹์€ ์ ‘๊ทผ ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค(Play ๊ธฐ๋ฐ˜ ์žฅ์น˜์— Amazon Appstore๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ทธ ๋ฐ˜๋Œ€). ์ด ๊ฒฝ์šฐ ํ•ด๋‹น API๋ฅผ ํ†ตํ•ด IAP๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด ํฌํฌ๋Š” ์„ค์น˜ ์†Œ์Šค๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ทธ์— ๋”ฐ๋ผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. dev ํ™˜๊ฒฝ์—์„œ๋Š” ์„ค์น˜ ์†Œ์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ œ๋Œ€๋กœ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋„๋ก fallback์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚ด ํฌํฌ๊ฐ€ ์—…์ŠคํŠธ๋ฆผ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋ณ‘ํ•ฉ๋˜๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฅผ ๋ฌธ์„œํ™”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  35 ๋Œ“๊ธ€

๊ณผ๊ฑฐ์— ์ด๋ฅผ ์ง€์›ํ•˜๋Š” ์ž‘์—…์ด ์žˆ๋Š” ๊ฒƒ์„ ๋ณด์•˜์ง€๋งŒ ๊ตฌ์‹์œผ๋กœ ๋ณด์ด๋ฉฐ ํ˜„์žฌ react-native-iap ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
https://github.com/dooboolab/react-native-iap/issues/370
๊ทธ๋ž˜์„œ ๋‚˜๋Š” https://github.com/nochkin/react-native-iap/tree/amazon-iap ์—์„œ ๋‚ด ์ž์‹ ์˜ ํฌํฌ๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ์ž์‹ ์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ PR์„ ์ž‘์„ฑํ•˜๊ธฐ ์ „์— ์‹ค์ œ ์•ŒํŒŒ/๋ฒ ํƒ€ ํ…Œ์Šคํ„ฐ๊ฐ€ ํŠน์ • ์—ฃ์ง€ ์ผ€์ด์Šค๋ฅผ ๊ฒ€ํ† ํ•˜๊ณ  ์ ์ ˆํ•˜๊ฒŒ ์—ฐ๋งˆํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚ด ์•ฑ์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋งค์šฐ ๋†’๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ์›๋ž˜์˜ react-native-iap API ์•ˆ์— ๋จธ๋ฌผ๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„์ง ํ•˜์ง€ ์•Š์€ ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค(๋ˆ„๊ตฐ๊ฐ€ ์ œ๋Œ€๋กœ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋ฉด ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).

๋‚ด ํฌํฌ์˜ ์ฃผ์š” ๋””์ž์ธ ๊ฒฐ์ • ์ค‘ ํ•˜๋‚˜๋Š” Google๊ณผ Amazon์„ ๊ฐ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์žฅ์น˜ ๋ชจ๋ธ/์ œ์กฐ์—…์ฒด๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž๊ฐ€ Google Play๋ฅผ Kindle์— ์„ค์น˜ํ•˜๊ณ  Google์„ ํ†ตํ•ด ์•ฑ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ข‹์€ ์ ‘๊ทผ ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค(Play ๊ธฐ๋ฐ˜ ์žฅ์น˜์— Amazon Appstore๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ทธ ๋ฐ˜๋Œ€). ์ด ๊ฒฝ์šฐ ํ•ด๋‹น API๋ฅผ ํ†ตํ•ด IAP๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด ํฌํฌ๋Š” ์„ค์น˜ ์†Œ์Šค๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ทธ์— ๋”ฐ๋ผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. dev ํ™˜๊ฒฝ์—์„œ๋Š” ์„ค์น˜ ์†Œ์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ œ๋Œ€๋กœ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋„๋ก fallback์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‚ด ํฌํฌ๊ฐ€ ์—…์ŠคํŠธ๋ฆผ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋ณ‘ํ•ฉ๋˜๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฅผ ๋ฌธ์„œํ™”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@nochkin ์ •๋ง ์ข‹์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ํ…Œ์ŠคํŠธํ•˜๋Š” ๋‹จ๊ณ„๋ฅผ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. amazon ๊ธฐ๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์•„์ง ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ํ†ตํ•ฉ์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด ๋ฌธ์„œ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ ๋ชฉ์ ์œผ๋กœ ์‹ค์ œ Amazon ์žฅ์น˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Amazon์ด ์•„๋‹Œ ์žฅ์น˜์— Amazon Appstore๋ฅผ ์„ค์น˜ํ•˜๋ฉด ๊ทธ๋ ‡๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
์˜ค๋Š˜ ๋‚˜์ค‘์— ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ด€์‹ฌ์ด ์žˆ์–ด์„œ ๋‹คํ–‰์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ๊ธฐ์กด ์•ฑ์— Amazon IAP ์ง€์›์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์•ˆ๋‚ด์„œ์ž…๋‹ˆ๋‹ค.
https://github.com/nochkin/react-native-iap/blob/amazon-iap/README_AMAZON.md
์ถ”๊ฐ€ ์„ค๋ช…์ด ํ•„์š”ํ•œ ์‚ฌํ•ญ์ด ์žˆ์œผ๋ฉด ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

์ฐธ๊ณ ๋กœ,
์–ด์ ฏ๋ฐค ๋‚ด ํฌํฌ์— ๋ช‡ ๊ฐ€์ง€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ถ”๊ฐ€๋กœ ํ‘ธ์‹œํ•˜๊ณ  ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด ์•ฑ์„ ํ”„๋กœ๋•์…˜์— ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.
์ง€๊ธˆ๊นŒ์ง€๋Š” ์ข‹์•„๋ณด์ž…๋‹ˆ๋‹ค.
๋‚ด ์•ฑ์—์„œ ๋‹ค๋ฃจ์ง€ ์•Š๋Š” ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด๋‚˜ ์‚ฌ์šฉ ์‚ฌ๋ก€๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๋กœ๋ถ€ํ„ฐ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

@hyochan ๋ฆด๋ฆฌ์ฆˆ์— ์ถ”๊ฐ€ํ•  ๊ณ„ํš์€ ์—†๋‚˜์š”?

@curiousdustin ,
๋‚ด ํฌํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธํ•˜๊ณ  ํ”ผ๋“œ๋ฐฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
https://github.com/nochkin/react-native-iap/tree/amazon-iap
๋‚˜๋Š” ๋‹น์‹ ์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€๊ฐ€ ๋‚˜์™€ ๋‹ค๋ฅผ ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•˜๋ฏ€๋กœ ๋” ๋งŽ์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์–ป๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€ ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@nochkin ๊ท€ํ•˜์˜ ํฌํฌ์—๋Š” Amazon ๊ตฌ๋… IAP์— ๋Œ€ํ•œ ์ง€์›์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๊นŒ?

@curiousdustin ,
์‹œํ–‰ํ•œ์ง€ ์˜ค๋ž˜๋˜์—ˆ์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋…์œผ๋กœ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š์•˜์„ ๋ฟ์ž…๋‹ˆ๋‹ค.
๋‚˜๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ์–ด๋–ค ๊ฒƒ๋„ ๊ฒ€์ฆํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ์ „ํžˆ ์„œ๋ฒ„ ์ธก์—์„œ ๊ฒ€์ฆ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Amazon์€ ํŠธ๋ž˜ํ”ฝ์„ ๊ทธ๋ ‡๊ฒŒ ๋งŽ์ด ๊ฐ€์ ธ์˜ค์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ƒํ™œ์—์„œ์˜ ํ…Œ์ŠคํŠธ๋Š” ๋‹ค์†Œ ๋Š๋ฆฝ๋‹ˆ๋‹ค. ์ด ๋ถ€๋ถ„์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ข‹์•„, ์•„๋งˆ ์ด๊ฒƒ์„ ์‹œํ—˜ํ•ด ๋ณผ ๊ฒƒ์ด๋‹ค. ํ˜„์žฌ ํ”„๋กœ๋•์…˜์—์„œ ์ž์ฒด ํฌํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ ์ด๋Š” ์ฃผ์š” ์ˆ˜๋ช… ์ฃผ๊ธฐ ๊ด€๋ จ ๋ณ€๊ฒฝ ์ด์ „์˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ดํ›„์˜ ๋ชจ๋“  ํ›Œ๋ฅญํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ํ™œ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋ฉ‹์ง„. ์ €๋Š” ์•„์ง ๋‚ด ์•ฑ(rn-iap์ด ์•„๋‹Œ ๋‚ด๋ถ€ ์•ฑ ๊ด€๋ จ ๋กœ์ง)์— ๋Œ€ํ•œ ๊ตฌ๋…์„ ๊ตฌํ˜„ํ•˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์žˆ๋‹ค๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”.

Amazon ๊ตฌ๋… API๋Š” ์ฟผ๋ฆฌ๋ฅผ ๋ฐ›์„ ๋•Œ ๋‹ค์†Œ ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋™์ผํ•œ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์›”๊ฐ„ ๋ฐ ์—ฐ๊ฐ„ ๊ตฌ๋…์ด ์žˆ์ง€๋งŒ Amazon์—์„œ๋Š” ์ด๋ฅผ ๋™์ผํ•˜๊ฒŒ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค. ์œ ์ผํ•œ ์ฐจ์ด์ ์€ ๊ฐ€๊ฒฉ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ฐ€๊ฒฉ๋งŒ์„ ๊ธฐ์ค€์œผ๋กœ ์–ด๋Š ๊ฒƒ์ด ์–ด๋Š ๊ฒƒ์ธ์ง€ ์•Œ์•„๋‚ผ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ๋… ๋ฐ ์‹ ๊ทœ ๊ตฌ๋… ์‚ฌ์šฉ์ž๊ฐ€ ๋งŽ์Šต๋‹ˆ๊นŒ?

์˜ˆ, ์ œ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์•ฑ์— ๋งค๋‹ฌ ์ˆ˜๋ฐฑ ๊ฐœ์˜ ์ƒˆ๋กœ์šด ๊ตฌ๋…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ์—…๋ฐ์ดํŠธ๋Š” ๋ฆด๋ฆฌ์Šค ์ „์— ์ฒ ์ €ํ•˜๊ฒŒ QA๋ฉ๋‹ˆ๋‹ค.

์›”๋ณ„ ๋ฐ ์—ฐ๊ฐ„ ์˜ต์…˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค๋ช…ํ–ˆ๋“ฏ์ด ๋‘˜ ๋‹ค Amazon์˜ ๋‹จ์ผ ID ์•„๋ž˜์— ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ ๊ธฐ๊ฐ„์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” Amazon API๋ฅผ ํ†ตํ•ด ๊ตฌ๋…์„ ํ™•์ธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ข‹์€ ์†Œ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋‚ด ํฌํฌ๊ฐ€ ๋‹ค๋ฅธ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ์ ์ ˆํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ๋ฐ›๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก UI์— ๊ตฌ๋… ๊ธฐ๊ฐ„์„ ํ‘œ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
Amazon Developer Console์— ํ•„์š”์— ๋”ฐ๋ผ ํ•ด๋‹น ํ•„๋“œ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ์ด์ƒํ•˜์ง€๋งŒ API๋Š” ํ•ด๋‹น ํ•„๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ค‘๊ณ ์— ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์„ ์ œ์‹œํ•˜๋”๋ผ๋„ ๊ตฌ๋งค ํ๋ฆ„์„ ์‹œ์ž‘ํ•˜๋ฉด Amazon์—์„œ ์ฒซ ๋ฒˆ์งธ ์˜ต์…˜์ด ๋ฏธ๋ฆฌ ์„ ํƒ๋œ ๊ธฐ๊ฐ„ ์˜ต์…˜์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์•„๋งˆ์กด ๊ตฌ๋งค ํ๋ฆ„ UI์— ๋“ค์–ด๊ฐˆ ๋•Œ๊นŒ์ง€ ์‚ฌ์šฉ์ž๊ฐ€ ์‹ค์ œ๋กœ ๊ธฐ๊ฐ„์„ ์„ ํƒํ•˜์ง€ ์•Š๋Š” ์•„๋งˆ์กด์šฉ ์ƒˆ UI๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ํฅ๋ฏธ๋กœ์šด ์•„์ด๋””์–ด. ๋‚ด UI๋Š” ์ด ๋ชจ๋ธ์— ๋งž์ง€ ์•Š์ง€๋งŒ ๋ณ€๊ฒฝํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ•˜๋ฉด ์ด ์˜ต์…˜์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”.

@curiousdustin @nochkin
์•ˆ๋…•ํ•˜์„ธ์š”, ๋‹น์‹ ์ด ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋งŽ์€ ์ผ์„ ํ–ˆ๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ–ˆ์Šต๋‹ˆ๋‹ค. ์™€์šฐ! ์ €๋„ ๊ตฌ๋…์„ ๊ตฌํ˜„ํ•˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค. ๊ตฌ๋…์ด ์—…๋ฐ์ดํŠธ๋˜์—ˆ๋Š”์ง€ ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์„œ๋ฒ„์—์„œ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? RVS์—์„œ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์€ Amazon ์˜์ˆ˜์ฆ์— ๊ตฌ๋… ์ข…๋ฃŒ ๋‚ ์งœ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์„œ๋ฒ„์˜ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ํŠน์ • ๊ตฌ๋…์„ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์— ๋Œ€ํ•ด ์•Œ๊ณ  ๊ณ„์‹ ๋‹ค๋ฉด ์ข‹์€ ์†Œ์‹์„ ๋“ค์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.)

์•„์ง ๋‚ด ํ”„๋กœ์ ํŠธ์—์„œ ์ด ํฌํฌ๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์•„๋งˆ ๋‹ค์Œ ๋‹ฌ์— ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„ ์ธก Amazon ํ•ญ๋ชฉ์ด ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋งŽ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚ด ํŒ€์˜ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ๋ฐฑ์—”๋“œ๋ฅผ ์ฒ˜๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์šฐ๋ฆฌ๋Š” ์ œํ’ˆ ID์™€ ์˜์ˆ˜์ฆ ID๋ฅผ ์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๊ณ  ํ•„์š”์— ๋”ฐ๋ผ ๊ตฌ๋… ์œ ํšจ์„ฑ์„ ํ™•์ธํ•˜๊ณ  ์—…๋ฐ์ดํŠธํ•˜๋Š” ํ•œ ๋‹ค๋ฅธ ๋ชจ๋“  ๊ฒƒ์„ ์ฒ˜๋ฆฌํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@kostiantyn-solianyk
๋‚ด ์ž์‹ ์˜ ์•ฑ์€ ํ˜„์žฌ Google Play ๋ฐ App Store๋งŒ ๊ตฌํ˜„ํ–ˆ์œผ๋ฉฐ ์•„์ง ๊ตฌ๋…์šฉ Amazon RVS๋ฅผ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” Amazon์— ๋Œ€ํ•ด ์ •๊ธฐ์ ์ธ ์ธ์•ฑ ๊ตฌ๋งค ํ™•์ธ์„ ์ˆ˜ํ–‰ํ•˜๋ฉฐ ์ด๋Š” ๊ตฌํ˜„ํ•˜๊ธฐ ์‰ฌ์› ์œผ๋ฏ€๋กœ ๊ตฌ๋…์ด ์–ด๋Š ์ •๋„ ๋น„์Šทํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋„ค, ํ…Œ์ŠคํŠธ ๋ชจ๋“œ์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ํฌํฌ๋„ ํ•„์š”์— ๋”ฐ๋ผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค(๋‚ด๊ฐ€ ํ™•์ธํ•œ ๊ฒฝ์šฐ).

์•„๋งˆ์กด ์˜์ˆ˜์ฆ์— ๊ตฌ๋… ์ข…๋ฃŒ์ผ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ตฌ๋… ์—…๋ฐ์ดํŠธ ๋ฌธ์ œ์— ๊ฐ‡ํ˜”๊ณ  ์‹ค์ œ๋กœ ์ด์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ๋…์— ๋Œ€ํ•œ Amazon ํ™•์ธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž‘์—…์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ๋‹ค์‹œ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
ํ…Œ์ŠคํŠธ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งž์Šต๋‹ˆ๊นŒ?

@nochkin ๊ทธ๋Ÿฐ๋ฐ getAvailablePurchases ๋ฐ getPurchaseHistory ๋ฉ”์„œ๋“œ๊ฐ€ ์˜ค๋ฅ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. ์ด 2๊ฐ€์ง€๊ฐ€ ํฌํฌ์˜ amazon IAP์— ๋Œ€ํ•ด ์•„์ง ๊ตฌํ˜„๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์€๋ฐ์š”?

๋‹น์‹ ์ด ๋งž์Šต๋‹ˆ๋‹ค. ๋‚ด ์ž์‹ ์˜ ์•ฑ ๋ชจ๋ธ์€ ๊ทธ๊ฒƒ๋“ค์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋‚ด๊ฐ€ ๋ณผ๊ฒŒ์š”. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@kostiantyn-solianyk ์™€ ์œ ์‚ฌํ•˜๊ฒŒ Amazon์— ๋Œ€ํ•ด ๋‹ค์Œ ๋ฉ”์„œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค.

RNIapAmazonModule.endConnection() RNIap.endConnection()

๋‚˜๋Š” ์ด๊ฒƒ์ด ์•ฝ์†์„ ํ•ด๊ฒฐํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ index.ts ์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

RNIapAmazonModule.refreshItems() ์ด(๊ฐ€) ํ˜ธ์ถœํ•œ RNIap.consumeAllItemsAndroid()

๋‚ด ์•ฑ์€ consumeAllItemsAndroid ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ž‘์—…์„ ์‚ดํŽด๋ณด์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

RNIapAmazonModule.getPurchaseHistoryByType() ์ด(๊ฐ€) ํ˜ธ์ถœํ•œ RNIap.getPurchaseHistory()

๋‚ด ์•ฑ์€ getPurchaseHistory ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ž‘์—…์„ ์‚ดํŽด๋ณด์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

RNIapAmazonModule.getAvailableItemsByType() RNIap.getAvailablePurchases() ์— ์˜ํ•ด ํ˜ธ์ถœ๋จ

์ด๋Š” ์•ฑ์—์„œ _๊ตฌ๋งค ๋ณต์›_ ํ๋ฆ„์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์„ ์ž‘๋™ ์‹œ์ผฐ์ง€๋งŒ ๋‚ด๊ฐ€ ๋ณธ ๊ฒƒ์ด ์•ฝ๊ฐ„ ํ•ดํ‚น ๋œ ๋Š๋‚Œ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์กฐ๊ธˆ ์ •๋ฆฌ๋˜๋ฉด ์—ฌ๊ธฐ์— ํ•ด๊ฒฐ์ฑ…์„ ๊ฒŒ์‹œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ ์™ธ์—๋Š” ์ง€๊ธˆ๊นŒ์ง€์˜ ํ…Œ์ŠคํŠธ๊ฐ€ ์ˆœ์กฐ๋กญ๊ฒŒ ์ง„ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. @nochkin๋‹˜ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

@nochkin , ์•ฑ ํ”„๋กœ์ ํŠธ์— ์ด ํฌํฌ๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚ด๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•  ๋•Œ :

"react-native-iap": "github:nochkin/react-native-iap.git#amazon-iap"

typescript์—์„œ ๋นŒ๋“œ๋œ js๊ฐ€ ์žˆ์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“ˆ์ด ํ•ด๊ฒฐ๋˜์ง€ ์•Š์ง€๋งŒ ๋นŒ๋“œ๋œ ๋ฒ„์ „์˜ ํ”„๋กœ์ ํŠธ๊ฐ€ github์— ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ ๋ฆด๋ฆฌ์Šค ํŒจํ‚ค์ง€์— ๋Œ€ํ•ด์„œ๋งŒ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ npm๊ณผ ์œ„์˜ ์ค„๋กœ ์„ค์น˜ํ•˜๋ฉด .npmignore ํŒŒ์ผ ๋•Œ๋ฌธ์— index.ts๋„ ๋‹ค์šด๋กœ๋“œํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒŒ ๋ง์ด ๋ผ?

๋ˆ„๋ฝ๋œ ๋ฉ”์†Œ๋“œ ๊ตฌํ˜„์— ๋Œ€ํ•œ ์š”์•ฝ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. "endConnection"์€ ํ•„์š”ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ตฌํ˜„ํ•˜์ง€ ์•Š์•˜์ง€๋งŒ ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด ๋ฉ”์„œ๋“œ๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ ธ์ง€๋งŒ ์ด์ œ ์ƒํ™ฉ์ด ์ •๋ฆฌ๋˜๊ณ  ์žˆ์œผ๋ฉฐ ๊ณง ํ™•์ธ/๊ตฌํ˜„ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋กœ์ปฌ์— ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
"react-native-iap": "../react-native-iap"
"react-native-iap" ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์žˆ๋Š” ๋™์•ˆ ๋‹จ์ˆœํžˆ ๋‚ด ์ €์žฅ์†Œ์˜ ๋ณต์ œ๋ณธ์ด ๋ฉ๋‹ˆ๋‹ค.

๊ฑฑ์ • ๋งˆ!

๋„ค, ๋กœ์ปฌ ํŒŒ์ผ ์ฐธ์กฐ๊ฐ€ ์ž‘๋™ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ด์‹์„ฑ ์žˆ๊ฒŒ ๋งŒ๋“ค์ง€๋Š” ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ์ž์‹ ์˜ ํฌํฌ/๋ถ„๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜๊ธฐ ์œ„ํ•ด ์ง€๊ธˆ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ข…์†์„ฑ์„ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

"react-native-iap": "github:curiousdustin/react-native-iap.git#curious-amazon-iap-ts"

๊ทธ๋ฆฌ๊ณ  ๋‚ด ์ง€์ ์—์„œ react-native-iap ์˜ package.json main ์†์„ฑ์„ $#$5 index.ts ๋Œ€์‹  .js ๋กœ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ .npmignore ์—์„œ TypeScript ๊ด€๋ จ ํ•ญ๋ชฉ์„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ํ˜„์žฌ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ œ RN ์„ค์ •์ด ์ž๋™์œผ๋กœ TS ๊ธฐ๋ฐ˜ ๋ชจ๋“ˆ์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ๋•Œ๋ฌธ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค...

๋ˆ„๋ฝ๋œ ๊ฒƒ์œผ๋กœ ๋ณด์ด๋Š” ๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ์ž…๋‹ˆ๋‹ค.

Amazon ๊ตฌํ˜„์€ Google ๋ฒ„์ „์—์„œ์™€ ๊ฐ™์ด ์˜ค๋ฅ˜ ์ด๋ฒคํŠธ๋ฅผ ๋‚ด๋ณด๋‚ด๋Š” ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

sendEvent(reactContext, "purchase-error", error);

์ด๊ฒƒ์€ purchaseErrorListener ๊ฐ€ ํ˜ธ์ถœ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์œ ๋ช…ํ•œ. ์ข‹์€ ์ง€์ . ๊ฐ์‚ฌ ํ•ด์š”.

์•ˆ๋…•ํ•˜์„ธ์š”, ์ตœ๊ทผ์— ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ™œ๋™์ด ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์—ฌ์ „ํžˆ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๊ด€์‹ฌ์ด ํ•„์š”ํ•œ๊ฐ€์š”? ๋” ์ด์ƒ ํ™œ๋™์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๋ฌธ์ œ๊ฐ€ ์ข…๋ฃŒ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์— "ํ† ๋ก ์šฉ" ๋˜๋Š” "์ข‹์€ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ œ"๋กœ ๋ ˆ์ด๋ธ”์„ ์ง€์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์—ด์–ด ๋‘๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์ถฉ๋Œ!

์ด ํ”Œ๋Ÿฌ๊ทธ์ธ์—์„œ๋„ amazon์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ž๋™ ๊ฐฑ์‹  ๊ตฌ๋…์„ ์œ„ํ•ด @nochkin ์ด ๋งŒ๋“  amazon์˜ ๊ตฌํ˜„์„ ์‚ฌ์šฉํ•ด ์™”์œผ๋ฉฐ ์ƒ๋‹นํžˆ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค. ์ด ํฌํฌ๋ฅผ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ํ†ตํ•ฉํ•˜๊ณ  ๊ตฌํ˜„์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋” ๋งŽ์€ ๊ธฐ์—ฌ์ž ๊ธฐ๋ฐ˜์„ ๊ฐ–๋Š” ๊ฒƒ์€ ๊ต‰์žฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

๋‚˜์ค‘์— ์ด์— ๋Œ€ํ•œ ๋‰ด์Šค๊ฐ€ ๋‚˜์˜ค๊ฑฐ๋‚˜ ์•„์ด๋””์–ด๊ฐ€ ์‚ญ์ œ๋  ์˜ˆ์ •์ž…๋‹ˆ๊นŒ?

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋–จ์–ด์งˆ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฃผ์š” ์ง€์—ฐ ์ง€์ ์€ ๋ช‡ ๊ฐ€์ง€ ๋ˆ„๋ฝ๋œ ๊ธฐ๋Šฅ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค(๋‚ด ์‚ฌ์šฉ ์‚ฌ๋ก€์—์„œ๋Š” ์‚ฌ์†Œํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ๋Š” ์ค‘์š”ํ•  ์ˆ˜ ์žˆ์Œ). ๋‚ด ์•ฑ๋„ ํ˜„์žฌ ์ƒํƒœ์— ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค.
ํผ์ฆ์˜ ๋‚˜๋จธ์ง€ ์กฐ๊ฐ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋‚ด ๋ ˆ์ด๋”์— ์žˆ๊ณ  ๋‚˜๋Š” ๊ทธ ์ž‘์—…์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ ์™„๋ฃŒ/ํ…Œ์ŠคํŠธ๋Š” ๋‹ค๋ฅธ ์šฐ์„  ์ˆœ์œ„๋กœ ์ธํ•ด ์˜ˆ์ƒ๋ณด๋‹ค ์˜ค๋ž˜ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

์˜ˆ, ์ƒํ™ฉ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ด ์ƒํ™ฉ์„ ์ฃผ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ๐Ÿคฃ ์กฐ๊ธˆ๋งŒ ๋” ์‹œ๊ฐ„์„ ๋‚ด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@nochkin @curiousdustin๋‹˜ ์˜ ๋ฉ‹์ง„ ์ž‘ํ’ˆ์„ ๋ฐ”ํƒ•์œผ๋กœ ํ™๋ณด(#1134)๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค! ๐Ÿ‘
ํ…Œ์ŠคํŠธ ์™„๋ฃŒ, ์šฐ๋ฆฌ ์ธก์—์„œ ํ›Œ๋ฅญํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค! PR์ด ๋ณ‘ํ•ฉ๋  ๋•Œ react-native-iaphub ์— Amazon ์ง€์›์„ ์ถ”๊ฐ€ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
๊ธฐ๋Šฅ์ ์ด์ง€๋งŒ @nochkin ์ด ๋งํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ์•ž์œผ๋กœ ์šฐ๋ฆฌ๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ฐœ์„  ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”, ์ตœ๊ทผ์— ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ™œ๋™์ด ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์—ฌ์ „ํžˆ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๊ด€์‹ฌ์ด ํ•„์š”ํ•œ๊ฐ€์š”? ๋” ์ด์ƒ ํ™œ๋™์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๋ฌธ์ œ๊ฐ€ ์ข…๋ฃŒ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์— "ํ† ๋ก ์šฉ" ๋˜๋Š” "์ข‹์€ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ œ"๋กœ ๋ ˆ์ด๋ธ”์„ ์ง€์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์—ด์–ด ๋‘๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ๋˜์—ˆ์œผ๋ฉฐ ์ด์ œ 5.0.0 ๋ฆด๋ฆฌ์Šค์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค.
https://github.com/dooboolab/react-native-iap/releases/tag/5.0.0

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰