{"id":123835,"date":"2024-02-26T08:56:48","date_gmt":"2024-02-26T08:56:48","guid":{"rendered":"https:\/\/wp-prod-new.adapty.io\/sdk\/flutter\/"},"modified":"2025-05-07T10:14:55","modified_gmt":"2025-05-07T10:14:55","slug":"flutter","status":"publish","type":"sdk","link":"https:\/\/adapty.io\/fr\/sdk\/flutter\/","title":{"rendered":"Flutter"},"content":{"rendered":"\n
makePurchase<\/strong><\/summary>\n
\r\n\r\n \r\n
\/\/ Your app's code<\/span><\/span>\r\ntry<\/span> {<\/span><\/span>\r\n    final<\/span> profile<\/span> =<\/span> await<\/span> Adapty<\/span>()<\/span>.<\/span>makePurchase<\/span>(<\/span>product<\/span>: <\/span>product<\/span>)<\/span>;<\/span><\/span>\r\n    \/\/ successful purchase<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n    \/\/ handle the error<\/span><\/span>\r\n}<\/span> catch<\/span> (e) <\/span>{<\/span><\/span>\r\n}<\/span><\/span>\r\n\r\n<\/code><\/pre>\r\n<\/div>\n<\/details>\n\n
restorePurchases<\/strong><\/summary>\n
\r\n\r\n \r\n
\/\/ Your app's code<\/span><\/span>\r\ntry<\/span> {<\/span><\/span>\r\n    final<\/span> profile<\/span> =<\/span> await<\/span> Adapty<\/span>()<\/span>.<\/span>restorePurchases<\/span>()<\/span>;<\/span><\/span>\r\n    \/\/ check the access level<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n    \/\/ handle the error<\/span><\/span>\r\n}<\/span> catch<\/span> (e) <\/span>{<\/span><\/span>\r\n}<\/span><\/span>\r\n\r\n<\/code><\/pre>\r\n<\/div>\n<\/details>\n\n
identify<\/strong><\/summary>\n
\r\n\r\n \r\n
\/\/ Your app's code<\/span><\/span>\r\ntry<\/span> {<\/span><\/span>\r\n    await<\/span> Adapty<\/span>()<\/span>.<\/span>identify<\/span>(<\/span>customerUserId<\/span>)<\/span>;<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n    \/\/ handle the error<\/span><\/span>\r\n}<\/span> catch<\/span> (e) <\/span>{<\/span><\/span>\r\n}<\/span><\/span>\r\n\r\n\r\n<\/code><\/pre>\r\n<\/div>\n<\/details>\n\n
updateProfile<\/strong><\/summary>\n
<\/path><\/path><\/svg><\/span>
\/\/ Your app's code<\/span><\/span>\r\nfinal builder <\/span>=<\/span> <\/span>AdaptyProfileParametersBuilder<\/span>()<\/span><\/span>\r\n    <\/span>..<\/span>setFirstName<\/span>(<\/span>'<\/span>John<\/span>'<\/span>)<\/span><\/span>\r\n    <\/span>..<\/span>setLastName<\/span>(<\/span>'<\/span>Appleseed<\/span>'<\/span>)<\/span>;<\/span><\/span>\r\ntry<\/span> <\/span>{<\/span><\/span>\r\n    <\/span>await<\/span> <\/span>Adapty<\/span>()<\/span>.<\/span>updateProfile<\/span>(<\/span>builder<\/span>.<\/span>build<\/span>())<\/span>;<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n    <\/span>\/\/ handle the error<\/span><\/span>\r\n}<\/span> <\/span>catch<\/span> (e) <\/span>{<\/span><\/span>\r\n}<\/span><\/span><\/code><\/pre><\/div>
\n<\/details>\n\n
updateAttribution<\/strong><\/summary>\n
\r\n\r\n \r\n
\/\/ Your app's code<\/span><\/span>\r\ntry<\/span> {<\/span><\/span>\r\n  await<\/span> Adapty<\/span>()<\/span>.<\/span>updateAttribution<\/span>(<\/span>\"<\/span><attribution><\/span>\"<\/span>,<\/span> source<\/span>: <\/span>\"<\/span><source><\/span>\"<\/span>,<\/span> networkUserId<\/span>: <\/span>\"<\/span><networkUserId><\/span>\"<\/span>)<\/span>;<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n  \/\/ handle the error<\/span><\/span>\r\n}<\/span> catch<\/span> (e) <\/span>{<\/span><\/span>\r\n}<\/span><\/span>\r\n\r\n\r\n<\/code><\/pre>\r\n<\/div>\n<\/details>\n\n
Exemple<\/summary>\n
\r\n\r\n \r\n
\/\/ Your app's code<\/span><\/span>\r\nimport<\/span> '<\/span>package:adapty_flutter\/adapty_flutter.dart<\/span>'<\/span>;<\/span><\/span>\r\nAdapty<\/span>()<\/span>.<\/span>activate<\/span>()<\/span>;<\/span><\/span>\r\n\r\n\/\/ Make a purchase, Adapty handles the rest<\/span><\/span>\r\ntry<\/span> {<\/span><\/span>\r\n\tfinal<\/span> profile<\/span> =<\/span> await<\/span> Adapty<\/span>()<\/span>.<\/span>makePurchase<\/span>(<\/span>product<\/span>: <\/span>product<\/span>)<\/span>;<\/span><\/span>\r\n\t\/\/ successful purchase<\/span><\/span>\r\n}<\/span> on AdaptyError <\/span>catch<\/span> (adaptyError) <\/span>{<\/span><\/span>\r\n\t\/\/ handle the error<\/span><\/span>\r\n}<\/span> catch<\/span> (error) <\/span>{<\/span><\/span>\r\n\t\/\/ handle another errors<\/span><\/span>\r\n}<\/span><\/span><\/code><\/pre>\r\n<\/div>\n<\/details>\n","protected":false},"excerpt":{"rendered":"","protected":false},"featured_media":0,"parent":0,"menu_order":0,"template":"","page-builder":[],"class_list":["post-123835","sdk","type-sdk","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/sdk\/123835","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/sdk"}],"about":[{"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/types\/sdk"}],"version-history":[{"count":0,"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/sdk\/123835\/revisions"}],"wp:attachment":[{"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/media?parent=123835"}],"wp:term":[{"taxonomy":"page-builder","embeddable":true,"href":"https:\/\/adapty.io\/fr\/wp-json\/wp\/v2\/page-builder?post=123835"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}