Code Monkey home page Code Monkey logo

adaptysdk-unity's Introduction


Easy In-App Purchases Integration to
Make Your Unity App Profitable

WebsiteDiscordTwitter

Adapty: CRM for mobile apps with subscriptions

Adapty Unity SDK is a native wrapper around Adapty iOS SDK and Adapty Android SDK. Both SDKs are written in pure Swift/Kotlin and support iOS 9+, Android 4.1+ which fit for 99.9% users all wrapped into C# lib.

Why Adapty?

  • On-the-fly paywalls price testing. Test different prices, duration, offers, messages, and designs simultaneously, all without new app releases.
  • Full customer's payment history. Explore the user's payment events from the trial start to subscription cancellation or billing issues.
  • In-app purchase data integration. Send subscription events to 3rd-party analytics, attribution, and ad services with no coding, even if the user uninstalls the app.
  • No server code implementation. Integrate in-app purchases with server-side receipt validation in minutes. Apple Promotional Offers supported out-of-the-box.
  • Advanced analytics. Analyze your app real-time metrics with advanced filters, such as Ad network, Ad campaign, country, A/B test, etc.

Integrate IAPs Within a Few Hours Without Server Coding

Adapty handles everything, from free trials to refunds, in a simple, developer-friendly SDK.

  • Free trials, upgrades, downgrades, crossgrades, family sharing, renewals, promo offers, intro offers, promo codes, and more – Adapty SDK does everything with a single line of code.
  • Easy subscription management.
  • One-time purchases and lifetime subscriptions supported.
  • Sync subscribers' states across iOS, Android, and Web.

Price Testing for In-app Purchases on Unity Without App Releases

  • Optimize in-app subscriptions with the paywall A/B testing. Conversions, trials, revenue, cancellations, and more — everything is calculated for you: each paywall and each A/B test.
  • Change images, colors, layouts, and literally anything with a custom JSON. Configure different prices, trial periods, promo offers, and more in Adapty without app releases.

Paywall A/B Testing on Unity

Adapty: In-app subscriptions with paywall A/B testing

  • Conversions, trials, revenue, cancellations, and more everything is calculated for you: each paywall and each A/B test.
  • Change images, colors, layouts and literally anything with a custom JSON.
  • Price testing is seamlessly integrated for any platform.

Real-time Analytics for Your Unity App

Adapty: How Adapty works

  • Manage the subscription's state without managing transactions.
  • 99.5% accuracy with App Store Connect.
  • View and analyze data by attributes, such as status, channels, campaigns, and more.
  • Filter, group, and measure metrics by attribution, platform, custom users' segments, and more in a few clicks.

Requirements

Mobile App Monetization's Largest Community

Ask questions, participate in discussions about Adapty-related topics, become a part of our community for mobile app developers and marketers. Learn how to monetize your app, ask questions, post jobs, read industry news and analytics. Ad free.

Getting Started

Please refer to our documentation to install and configure Adapty SDK. Set up purchases in hours instead of weeks 🚀

Contributing

  • Feel free to open an issue, we check all of them or drop us an email at [email protected] and tell us everything you want.
  • Want to suggest a feature? Just contact us or open an issue in the repo.

Like Adapty SDK?

So do we! Feel free to star the repo ⭐️⭐️⭐️ and make our developers happy!

License

Adapty is available under the MIT license. See LICENSE for details.

adaptysdk-unity's People

Contributors

akyashkin avatar aleksei-valiano avatar dardary avatar ditansu avatar iwitaly avatar kpotehin avatar lerg avatar vladd-g avatar x401om avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

adaptysdk-unity's Issues

Product.Price localization is based on device's settings region, not AppStore region

Hello!

We have an issue with price + currency symbol localization. We want to get price, based on AppStore region. However now we get price from the iPhone's settings region.

For example: user's AppStore region is Russia, but iPhone's region is Great Britain (English). As the result this user gets price in dollars, not RUB, but it should be the opposite.

So, the SDK returns NOT the same price + currency, which will be showed next in the system IAP popup.

How can we fix this? Thank you in advance.

Failed to invoke callback System.Action

Hi, when calling the GetPurchaserInfo method, I get the error: "Failed to invoke callback System.Action`1[System.String] with arg {"success":{"access_levels":{},"subscriptions":{},"non_subscriptions":{},"profile_id":"07d28733-8695-4663-ba6a-22e505df02c7"}}: Exception has been thrown by the target of an invocation. --> The given key 'premium' was not present in the dictionary."

Also sometimes there is an error with Make Purchase and RestorePurchases:
"Failed to invoke callback System.Action`1[System.String] with arg {"error":{"code":2,"message":"The operation couldn’t be completed. (SKErrorDomain error 2.)","adapty_code":2,"domain":"SKErrorDomain"}}: Exception has been thrown by the target of an invocation. --> Object reference not set to an instance of an object.
Stacktrace is not supported on this platform."

Unity 2021.3.3f1, Cocoapods Adapt 1.17.6, Unity Plugin 1.0.1, iOS 15.3.1

Android build duplicated class

I get this error when trying to build for Android with Adapty SDK:

CommandInvokationFailure: Gradle build failed.
/Applications/Unity/Hub/Editor/2022.3.10f1/PlaybackEngines/AndroidPlayer/OpenJDK/bin/java -classpath "/Applications/Unity/Hub/Editor/2022.3.10f1/PlaybackEngines/AndroidPlayer/Tools/gradle/lib/gradle-launcher-7.2.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx4096m" "assembleRelease"

stderr[
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':launcher:checkReleaseDuplicateClasses'.

A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
Duplicate class com.android.billingclient.BuildConfig found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AccountIdentifiers found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AcknowledgePurchaseParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AcknowledgePurchaseParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AcknowledgePurchaseResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AlternativeBillingListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AlternativeChoiceDetails found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.AlternativeChoiceDetails$Product found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$BillingResponseCode found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$ConnectionState found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$FeatureType found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$ProductType found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClient$SkuType found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClientImpl found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingClientStateListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$ProductDetailsParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$ProductDetailsParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$ProrationMode found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$SubscriptionUpdateParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingFlowParams$SubscriptionUpdateParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingResult found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.BillingResult$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ConsumeParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ConsumeParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ConsumeResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageParams$InAppMessageCategoryId found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageResult found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.InAppMessageResult$InAppMessageResponseCode found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails$OneTimePurchaseOfferDetails found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails$PricingPhase found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails$PricingPhases found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails$RecurrenceMode found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetails$SubscriptionOfferDetails found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProductDetailsResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.ProxyBillingActivity found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.Purchase found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.Purchase$PurchaseState found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.PurchaseHistoryRecord found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.PurchaseHistoryResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.PurchasesResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.PurchasesUpdatedListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryProductDetailsParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryProductDetailsParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryProductDetailsParams$Product found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryProductDetailsParams$Product$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryPurchaseHistoryParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryPurchaseHistoryParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryPurchasesParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.QueryPurchasesParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.SkuDetails found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.SkuDetailsParams found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.SkuDetailsParams$Builder found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.SkuDetailsResponseListener found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class com.android.billingclient.api.zza found in modules jetified-billing-5.2.1-runtime (:billing-5.2.1:) and jetified-billing-6.1.0-runtime (com.android.billingclient:billing:6.1.0)
Duplicate class co

Collides with Appsflyer Plugin

image

The screenshot above displays a collision issue between the Appsflyer plugin and AdaptySDK-Unity, preventing further progress.

Do you have any suggestions or solutions to resolve this problem?

validation on upload to store gives "UnityFramework.framework contains disallowed file"

Hey there,
i just wondered why I got the above mentioned error after adding adapty to my Unity project when trying to upload an iOS build through xCode. I use Unity 2022.3.21f1 and the latest Adapty SDK from Github.

I found this line project.AddBuildProperty(targetGuid, "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES", "YES"); in the file Assets/AdaptySDK/Plugins/iOS/Editor/AdaptySDKPostProcess.cs

I highly assume this caused the problem. When I set "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES" to "NO" in xCode Build Settings for the Target UnityFramework again, archive and upload the build, it's works. I think it should be changed in your plugin as this otherwise prevents people from uploading their builds to iTunes Connect.

Thank you and best Marvin

Adapty SDK Unity

I installed the SDK and trying to use within the Unity Editor.
Three questions:

  • How can I display a paywall? Is Adapty.GetPaywall enough or do I need to explicitly call a "show" method afterwards?
  • Can we see the configured paywall in the Unity editor or is this only working on ios / android?
  • Do the Adapty paywalls support landscape orientation (as in the browser while configuring them, I only can choose portrait mode preview screens)?

I get the following error when requesting a paywall:

AdaptyUnityError.DecodingFailed(System.NullReferenceException: Object reference not set to an instance of an object
  at AdaptySDK.SimpleJSON.JSONNode.Parse (System.String aJSON) [0x003cb] in /Users/marvinkruger/MusicVis copy/Assets/AdaptySDK/JSON/SimpleJSON.cs:517 
  at AdaptySDK.SimpleJSON.JSONNodeExtensions.ExtractPaywallOrError (System.String json) [0x00004] in /Users/marvinkruger/MusicVis copy/Assets/AdaptySDK/JSON/Result+JSON.cs:45 )
 #0 GetStacktrace(int)
 #1 DebugStringToFile(DebugStringToFileData const&)
 #2 DebugLogHandler_CUSTOM_Internal_Log(LogType, LogOption, ScriptingBackendNativeStringPtrOpaque*, ScriptingBackendNativeObjectPtrOpaque*)
 #3  (Mono JIT Code) (wrapper managed-to-native) UnityEngine.DebugLogHandler:Internal_Log (UnityEngine.LogType,UnityEngine.LogOption,string,UnityEngine.Object)
 #4  (Mono JIT Code) [DebugLogHandler.cs:10] UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[])
 #5  (Mono JIT Code) [Logger.cs:61] UnityEngine.Logger:Log (UnityEngine.LogType,object)
 #6  (Mono JIT Code) [Debug.bindings.cs:102] UnityEngine.Debug:Log (object)
 #7  (Mono JIT Code) [SubscriptionWindow.cs:28] SubscriptionWindow/<>c:<Start>b__9_0 (AdaptySDK.Adapty/Paywall,AdaptySDK.Adapty/Error)
 #8  (Mono JIT Code) [Adapty.cs:91] AdaptySDK.Adapty/<>c__DisplayClass7_0:<GetPaywall>b__0 (string)
 #9  (Mono JIT Code) [AdaptyNoop.cs:14] AdaptySDK.Noop.AdaptyNoop:GetPaywall (string,string,string,System.Nullable`1<long>,System.Action`1<string>)
 #10  (Mono JIT Code) [Adapty.cs:98] AdaptySDK.Adapty:GetPaywall (string,string,AdaptySDK.Adapty/PaywallFetchPolicy,System.Nullable`1<System.TimeSpan>,System.Action`2<AdaptySDK.Adapty/Paywall, AdaptySDK.Adapty/Error>)
 #11  (Mono JIT Code) [Adapty.cs:61] AdaptySDK.Adapty:GetPaywall (string,string,System.Action`2<AdaptySDK.Adapty/Paywall, AdaptySDK.Adapty/Error>)
 #12  (Mono JIT Code) [SubscriptionWindow.cs:45] SubscriptionWindow:Start ()
 #13  (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
 #14 mono_jit_runtime_invoke
 #15 do_runtime_invoke
 #16 mono_runtime_invoke
 #17 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool)
 #18 ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool)
 #19 MonoBehaviour::InvokeMethodOrCoroutineChecked(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingExceptionPtr*)
 #20 MonoBehaviour::InvokeMethodOrCoroutineChecked(ScriptingMethodPtr, ScriptingObjectPtr)
 #21 MonoBehaviour::DelayedStartCall(Object*, void*)
 #22 DelayedCallManager::Update(int)
 #23 InitPlayerLoopCallbacks()::EarlyUpdateScriptRunDelayedStartupFrameRegistrator::Forward()
 #24 ExecutePlayerLoop(NativePlayerLoopSystem*)
 #25 ExecutePlayerLoop(NativePlayerLoopSystem*)
 #26 PlayerLoop()
 #27 EditorPlayerLoop::Execute()
 #28 PlayerLoopController::InternalUpdateScene(bool, bool)
 #29 PlayerLoopController::EnterPlayMode()
 #30 PlayerLoopController::SetIsPlaying(bool)
 #31 Application::TickTimer()
 #32 -[EditorApplication TickTimer]
 #33 __NSFireTimer
 #34 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__
 #35 __CFRunLoopDoTimer
 #36 __CFRunLoopDoTimers
 #37 __CFRunLoopRun
 #38 CFRunLoopRunSpecific
 #39 RunCurrentEventLoopInMode
 #40 ReceiveNextEventCommon
 #41 _BlockUntilNextEventMatchingListInModeWithFilter
 #42 _DPSNextEvent
 #43 -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]
 #44 -[NSApplication run]
 #45 NSApplicationMain
 #46 EditorMain(int, char const**)
 #47 main
 #48 start

Readme.md outdated

  1. The plugin does not exist in Unity3d asset-store(at least impossible to find it manually using "adapty" as search-query)
  2. There is no *.unitypackage file to just add it into the project
  3. Is it still supported for Unity at all?

iOSIntroductoryOfferEligibility

I'm currently working on integration of Adapty with my Unity app. For this reason I downloaded the Adapty Unity SDK.
It's working so far (I can receive products, make purchases ...), but I now facing one problem:
I have a subscription with an introductory offer (3 day free trial) which the user can use if he subscribed the first time (eligible). How can I check if the Adapty.PaywallProduct is eligible for the introductory offer?

The class SubscriptionDetails has a field "AndroidIntroductoryOfferEligibility" which sounds like the one I'm searching for, but it indicates that it's only for android. How can I check the iOSIntroductoryOfferEligibility?

DecodingFailed

Hello. I started the project, but I get an error:
#AdaptyListener# <-- SetFallBackPaywalls error Code: DecodingFailed, Message: Failed decoding Adapty.Error, Detail: AdaptyUnityError.DecodingFailed(System.NullReferenceException: Object reference not set to an instance of an object
at AdaptySDK.SimpleJSON.JSONNode.Parse (System.String aJSON) [0x003cb] in D:\MyProjects\Unity\AdaptySDK-Unity-main\Assets\AdaptySDK\JSON\SimpleJSON.cs:517
at AdaptySDK.SimpleJSON.JSONNodeExtensions.ExtractErrorIfPresent (System.String json) [0x00000] in D:\MyProjects\Unity\AdaptySDK-Unity-main\Assets\AdaptySDK\JSON\Error+JSON.cs:47 )
UnityEngine.Debug:Log (object)ё

With what it can be connected?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.