React-native-iap: validateReceiptIos рд╣рдореЗрд╢рд╛ рдЭреВрдард╛ рд▓реМрдЯрддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдЕрдЧре░ 2018  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dooboolab/react-native-iap

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рджреЗрд╢реА-рдЖрдИрдПрдкреА рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг

2.0.0-рдЕрд▓реНрдлрд╛ 3
(рдореИрдВрдиреЗ 1.1.5 рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдПрдХ рд╣реА рдореБрджреНрджрд╛)

рдЬрд┐рди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдореЛрдВ рдореЗрдВ рдЖрдкрдХреЛ рддреНрд░реБрдЯрд┐ рд╣реБрдИ (IOS рдпрд╛ Android рдпрд╛ рджреЛрдиреЛрдВ?)

рдЖрдИрдУрдПрд╕

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

validateReceiptIos рд╡реИрдз рд░рд╕реАрджреЛрдВ рдХреЗ рд▓рд┐рдП 0/1 / true рд▓реМрдЯрд╛рддрд╛ рд╣реИ

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░

validateReceiptIos рд╣рдореЗрд╢рд╛ рдЭреВрдард╛ рд▓реМрдЯрддрд╛ рд╣реИ

рдкрд░реАрдХреНрд╖рдгрд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг (рдПрдореБрд▓реЗрдЯрд░? рд░рд┐рдпрд▓ рдбрд┐рд╡рд╛рдЗрд╕?)

рдЕрд╕рд▓реА рдбрд┐рд╡рд╛рдЗрд╕, рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдРрдк рд╕реНрдЯреЛрд░

рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо

рдореИрдВ рдСрдЯреЛ рдЕрдХреНрд╖рдп рд╕рджрд╕реНрдпрддрд╛ рдЦрд░реАрдж рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рдФрд░ рд▓реЗрдирджреЗрди рд░рд╕реАрдж рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЬрдм рдореИрдВ iOS рдкрд░ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗрд░реАрдЯреЗрд░рд┐рдкреЗрдЯрд┐рдкреЛрд╕ (рд░рд╕реАрдж, рд╕рддреНрдп, 55) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдВ рд╣рдореЗрд╢рд╛ рдЭреВрдареЗ рд╣реЛ рдЬрд╛рддрд╛ рд╣реВрдВред

рдЕрдЧрд░ рдореИрдВ JSON.stringify (Res) рд▓реЙрдЧ рдЗрди рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ:
{"рд╕реНрдерд┐рддрд┐": 21004, "рдкрд░реНрдпрд╛рд╡рд░рдг": "рд╕реИрдВрдбрдмреЙрдХреНрд╕"}

# 190 рдкрд░ рдЗрд╕реА рддрд░рд╣ рдХрд╛ рдПрдХ рдореБрджреНрджрд╛ рдерд╛

1я╕ПтГг good first issue ЁЯУ▒ iOS ЁЯЩП help wanted

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@LinusU @dooboolab
рдореИрдВрдиреЗ рдЕрднреА рд░рд╕реАрдж рдореЗрдВ рд╕рд╛рдЭрд╛ рд░рд╣рд╕реНрдп рдЬреЛрдбрд╝рд╛ рд╣реИ рдФрд░ рдЕрдм рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдо рдХрд░рддрд╛ рд╣реИред
рд╢рд╛рдпрдж рдореИрдВ рдЗрд╕реЗ рдбреЙрдХреНрд╕ рдореЗрдВ рдХрд╣реАрдВ рдпрд╛рдж рдХрд┐рдпрд╛? рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рд╡реИрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛?

  const receiptBody = {
        'receipt-data': product.transactionReceipt,
        'password': '*********'
      };

(рдЕрднреА рднреА рд╕рдВрд╕реНрдХрд░рдг 2.0.0-рдЕрд▓реНрдлрд╛ 3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░)

рд╕рднреА 11 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдк рдХрд┐рд╕ рд▓рд╛рдЗрди рдкрд░ рд▓реЙрдЧ рдЗрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ? ЁЯдФ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдХреМрди рд╕реЗ рд░рд┐рдПрдХреНрдЯрд┐рд╡ рдиреЗрдЯрд┐рд╡ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ?

@fabianunger рдЕрдЬреАрдмред # 190 рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпрд╛ рдЖрдк рдХреБрдЫ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

"рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛": "^ 16.3.2"
"рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓рдХ": "^ 0.55.3"

`` `
рдорд╛рдиреНрдп = async (рдЙрддреНрдкрд╛рдж) => {
рдкреНрд░рдпрддреНрди {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ (рдЙрддреНрдкрд╛рдж);

  const receiptBody = {
    'receipt-data': product.transactionReceipt,
  };
  console.log(receiptBody);

  const result = await RNIap.validateReceiptIos(receiptBody, true, 55);
  console.log(result);

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

};

`` `

@fabianunger рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рджреЗрддрд╛ рд╣реИ?

npm install LinusU/react-native-iap#ios-validate

@LinusU @dooboolab
рдореИрдВрдиреЗ рдЕрднреА рд░рд╕реАрдж рдореЗрдВ рд╕рд╛рдЭрд╛ рд░рд╣рд╕реНрдп рдЬреЛрдбрд╝рд╛ рд╣реИ рдФрд░ рдЕрдм рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдо рдХрд░рддрд╛ рд╣реИред
рд╢рд╛рдпрдж рдореИрдВ рдЗрд╕реЗ рдбреЙрдХреНрд╕ рдореЗрдВ рдХрд╣реАрдВ рдпрд╛рдж рдХрд┐рдпрд╛? рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рд╡реИрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛?

  const receiptBody = {
        'receipt-data': product.transactionReceipt,
        'password': '*********'
      };

(рдЕрднреА рднреА рд╕рдВрд╕реНрдХрд░рдг 2.0.0-рдЕрд▓реНрдлрд╛ 3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░)

@ рд▓рд┐рдиреБрд╕реБ
рдореИрдВрдиреЗ рдЗрд╕реЗ рдЖрдкрдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рднреА рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛: рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдоред
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореБрдЭреЗ {"рд╕реНрдерд┐рддрд┐": 21004, "рд╡рд╛рддрд╛рд╡рд░рдг": "рд╕реИрдВрдбрдмреЙрдХреНрд╕"} рдорд┐рд▓рддрд╛ рд╣реИред

рд░рд╕реАрдж рдХреЗ рднреАрддрд░ рд╕рд╛рдЭрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ 'рдкрд╛рд╕рд╡рд░реНрдб' рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░: рдХреНрдпрд╛ рдпрд╣ рд╡реИрд╕реЗ рднреА рдирд┐рдпрдорд┐рдд рддрд░реАрдХрд╛ рд╣реИ?

@fabianunger рдЖрдкрдиреЗ рдЗрд╕реЗ рд╕рд╣реА рдХрд┐рдпрд╛ рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рд░реЗрдлрд░реА рдпрд╣рд╛рдБред рдбреЙрдХреНрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд░рд╣реЗрдЧрд╛ред

shared secret рдХреНрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдХрд╣рд╛рдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ?

shared secret рдХреНрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдХрд╣рд╛рдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ?

https://www.appypie.com/faqs/how-can-i-get-saring-secret-key-for-in-app-purchase

{{рд╕реНрдерд┐рддрд┐: 21007}} рд▓реМрдЯрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдбрдХреНрд╢рди рдореЛрдб рдореЗрдВ рд╡реИрд▓рд┐рдбреЗрдЯ рд░рд┐рдХреЗрдЯ рдХрд░реЗрдВ, рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕рдХреЗ рд╕рд╛рде mw рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рдж

рдЗрдзрд░ рджреЗрдЦреЛ:

https://developer.apple.com/library/archive/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html

"21007: рдпрд╣ рд░рд╕реАрдж рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рд╕реЗ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрд╛рджрди рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рднреЗрдЬрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХреА рдЬрдЧрд╣ рднреЗрдЬреЗрдВред"

рдкрд░реАрдХреНрд╖рдг рдкрд░реНрдпрд╛рд╡рд░рдг рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: https://sandbox.itunes.apple.com/verifyReceipt

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

sanilcgs picture sanilcgs  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

schumannd picture schumannd  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

safciplak picture safciplak  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

HamzaIkram2727 picture HamzaIkram2727  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jvandenaardweg picture jvandenaardweg  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ