Discussions

Ask a Question
ANSWERED

Installint react-native-ui

Trying to use the paywall builder and react native ui. First, I installed adapty properly and it built fine. Then installing @adapty/react-native-ui continues to fail. This is the error message during the build: - What went wrong: Could not determine the dependencies of task ':adapty_react-native-ui:compileDebugJavaWithJavac'. > Could not resolve all task dependencies for configuration ':adapty_react-native-ui:debugCompileClasspath'. > Could not find io.adapty.internal:crossplatform:2.7.0. ``` Searched in the following locations: - https://oss.sonatype.org/content/repositories/snapshots/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - https://repo.maven.apache.org/maven2/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/node_modules/jsc-android/dist/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - https://dl.google.com/dl/android/maven2/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - https://www.jitpack.io/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/android/localMaven/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/android/internalMaven/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/node_modules/react-native-adapty/lib/android/localMaven/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/node_modules/@adapty/react-native-ui/android/localMaven/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom - file:/E:/test/node_modules/react-native/android/io/adapty/internal/crossplatform/2.7.0/crossplatform-2.7.0.pom Required by: project :adapty_react-native-ui ``` Tried it in an empty test project as well where nothing else but adapty packages are installed. Any help would be appreciated.
ANSWERED

Found error in makePurchase() AdaptyResult.Error callback.

Hi Adapty Team, I hope this message finds you well. **System**: Android **Adapty SDK Version**: 2.9.1 **Issue Description:** I have meticulously followed all the steps to set up my Adapty account, including configuring the paywall, placement, and access level. However, I'm encountering an issue when using the .makePurchase() method. The purchase flow launches successfully with the specified paywall (retrieved using .getPaywall()), but upon a successful purchase, I'm encountering an error in the callback with the AdaptyResult.Error listener. I would appreciate your assistance in resolving this matter. - **Error : ** `<HttpError 401 when requesting https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.bg.socialcardmaker/purchases/subscriptionsv2/tokens/ejgnbfhndepbmbgpoohmhkbl.AO-J1OxYk4rWpQSk_ymW5fYz5BCdYwRcFblIRVW5wRoeo_ElNzNXVSH51of5y4c8z53GCoK5st5rTqsFF3TZNFNvv76lH5Cx_4lBZvvuc0tNP4gxmtk2lOo?alt=json returned "The current user has insufficient permissions to perform the requested operation.". Details: "[{'message': 'The current user has insufficient permissions to perform the requested operation.', 'domain': 'androidpublisher', 'reason': 'permissionDenied'}]">` ======================== - After opening the given Link on the browser : `{ "error": { "code": 401, "message": "Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "errors": [ { "message": "Login Required.", "domain": "global", "reason": "required", "location": "Authorization", "locationType": "header" } ], "status": "UNAUTHENTICATED", "details": [ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "CREDENTIALS_MISSING", "domain": "googleapis.com", "metadata": { "method": "androidpublisher.SubscriptionPurchasesV2Service.Get", "service": "androidpublisher.googleapis.com" } } ] } }`

Adapty react-native/expo paywall login event

Hi, I see that there is an option to add a 'Login' button to the bottom of paywall next to the terms, privacy, restore, etc in the adapty GUI however I do not see any events or documentation on how to know when a user clicks the login button so that I can respond to that event. Any help would be greatly appreciated, I have provided code below to show how I am getting my paywall and a few of the current events that I am using to trigger off of. ``` const paywall = await adapty.getPaywall(id, locale) const view = await createPaywallView(paywall) // onPurchaseCompleted for now adapty.addEventListener('onLatestProfileLoad', () => { loginNavigation.navigate('Login', { firstTimeSubscriber: !isPastSubscriber, }) }) unsubscribe = view.registerEventHandlers({ onLoadingProductsFailed() { setErrorText( 'Something went wrong, please check your network and try again', ) }, onPurchaseFailed() { setErrorText( 'Something went wrong, please check your network and try again', ) }, onRenderingFailed() { setErrorText( 'Something went wrong, please check your network and try again', ) }, // etc, no onLoginClicked() or something similar? ```
ANSWERED

Не грузится пейвол

AdaptyError (code: 2003, message: Server error, detail: HTTPError.backend(GET /sdk/in-apps/purchase-containers/test_paywall_1/, [2.7.0]\: Adapty/Backend.Validator.swift#21, statusCode: 404, body: {"errors":[{"detail":"PurchaseContainer Not Found","status":"404","source":{"pointer":"/data"},"code":"not_found"}]})) Воспроизводится только на продакшне, и не всегда (но достаточно часто). Есть подозрение, что зависит от региона. У нас из 226 сессий пейвол загрузился только 36 раз. Грузится на страте приложения (но очень часто не загружается). Даже ревьювер один рас сказал, что пейвол не загрузился. Пишем на flutter. SDK public key: public_live_14URY7HD.jFGh5CxOUrshrW3NDnNL.
ANSWERED

Delete account

Hi, I would like to delete my account
ANSWERED

ERROR: No In-App Purchase product identifiers were found.

Hello, I received a message while call API with Android. - Adapty.getPaywall() => Response: {"data":{"type":"adapty_inapps_purchase_container_compact","id":"3a2d04a8-5983-495c-bb35-8dce1855a8d2","attributes":{"developer_id":"hummingPlace","revision":1,"variation_id":"8012a996-94c0-4d28-8cb3-1f67997ebd3a","paywall_id":"03758c0f-109e-4f5f-8ea0-8125abe9b6a2","ab_test_name":"hummingPaywall","paywall_name":"hummingPaywall","paywall_updated_at":1702483408516,"products":[{"title":"허밍순 1개월 구독","is_consumable":false,"vendor_product_id":"humm_pro_new_1","promotional_offer_id":null,"introductory_offer_eligibility":true,"promotional_offer_eligibility":false,"timestamp":1702529945612,"base_plan_id":"p1m","offer_id":null},{"title":"허밍순 3개월 구독","is_consumable":false,"vendor_product_id":"humm_pro_new_3","promotional_offer_id":null,"introductory_offer_eligibility":true,"promotional_offer_eligibility":false,"timestamp":1702529945612,"base_plan_id":"p3m","offer_id":null},{"title":"허밍순 6개월 구독","is_consumable":false,"vendor_product_id":"humm_pro_new_6","promotional_offer_id":null,"introductory_offer_eligibility":true,"promotional_offer_eligibility":false,"timestamp":1702529945612,"base_plan_id":"p6m","offer_id":null},{"title":"허밍순 12개월 구독","is_consumable":false,"vendor_product_id":"humm_pro_new_12","promotional_offer_id":null,"introductory_offer_eligibility":true,"promotional_offer_eligibility":false,"timestamp":1702529945612,"base_plan_id":"p1y","offer_id":null}],"is_promo":false,"visual_paywall":null,"custom_payload":null,"remote_config":null,"use_paywall_builder":true}},"meta":{"version":3}} - Adapty.getPaywallProducts => ERROR: No In-App Purchase product identifiers were found. ``` connect(); private void connect() { Adapty.getPaywall("hummingPlace", "en", result -> { if (result instanceof AdaptyResult.Success) { AdaptyPaywall paywall = ((AdaptyResult.Success<AdaptyPaywall>) result).getValue(); // the requested paywall G.Log("adapty", "-------------a1"); plist(paywall); } else if (result instanceof AdaptyResult.Error) { AdaptyError error = ((AdaptyResult.Error) result).getError(); // handle the error } }); } private void plist(AdaptyPaywall paywall){ Adapty.getPaywallProducts(paywall, result -> { if (result instanceof AdaptyResult.Success) { List<AdaptyPaywallProduct> products = ((AdaptyResult.Success<List<AdaptyPaywallProduct>>) result).getValue(); // the requested products G.Log("adapty", "-------------a"); G.Log("adapty", products.size()); } else if (result instanceof AdaptyResult.Error) { AdaptyError error = ((AdaptyResult.Error) result).getError(); G.Log("adapty", error.getMessage()); // ===> Error !!!!! [No In-App Purchase product identifiers were found.] // handle the error } }); } ``` I checked the items below. 1.Check if all the products have been added to Adapty Dashboard. 2.Ensure that the Package Name of your app matches the one from the Google Play Store. 3.Verify that the product identifiers from the app stores match with the ones you have added to the Dashboard. Please note that the identifiers should not contain the Package Name unless it is already included in the store. 4.Confirm that the app paid status is active in your Google tax settings. Ensure that your tax information is up-to-date and your certificates are valid. 5.Check if a bank account is attached to the app, so it can be eligible for monetization.
ANSWERED

"is_sandox" request parameter for subscription revoking

Hi! Recently I've found out that it is possible to [grant/prolong](https://docs.adapty.io/docs/server-side-api-specs#prolonggrant-a-subscription-for-a-user) subscription with `is_sandbox` parameter in the request body. It works brilliantly for me (except that API responds "Not a valid string" on the boolean "is_sandbox" parameter, but if I pass it as a string "true" all works fine :)) I see an expected event from `Sendbox` environment on every granting with `is_sandbox` flag. But when I want to revoke a granted subscription I can't find how to specify the environment of the transaction. When revoking a subscription I always see `Production` environment in event feed. Could you please make it possible to specify the environment for revoking the subscription? Respectfully, Vitaliy
ANSWERED

Change email

DM me to change email
ANSWERED

App in Release mode crashes on Android because of Proguard

Hi, I've been trying to run my app in Release mode, locally on my computer but I'm getting a crash on app launch. This is the error from the crash log: ``` Caused by: java.lang.IllegalStateException: TypeToken must be created with a type argument: new TypeToken\<...>() {}; When using code shrinkers (ProGuard, R8, ...) make sure that generic signatures are preserved." ``` I have followed the instruction about setting up Proguard here: <https://docs.adapty.io/docs/android-installation#configure-proguard>. The workaround I'm using for now is changing these following parameters from `true` to `false` to make it work, but I would like to avoid that: ```groovy isMinifyEnabled = false isShrinkResources = false ``` Any ideas? Thank you!
ANSWERED

I'm getting 401 "Error: Request failed with status code 401", when i hit this api for creating user.

``` const apiEndpoint = `https://api.adapty.io/api/v1/sdk/profiles/`; const apiKey = 'secret_live_BEHrYLTr.************\*\*\*************'; const headers = { Authorization: `Api-Key ${apiKey}`, 'Content-Type': 'application/json', }; let data = { customer_user_id: "45456456465", }; axios .post(apiEndpoint, data, { headers }) .then((response) => { console.log("Response:", response.data); }) .catch((error) => { console.log("error", error); console.error("Error:", error.message); }); ```