Skip to content

[DO NOT MERGE]: Make purchase tester work#2963

Closed
fire-at-will wants to merge 30 commits intomainfrom
make-purchase-tester-work
Closed

[DO NOT MERGE]: Make purchase tester work#2963
fire-at-will wants to merge 30 commits intomainfrom
make-purchase-tester-work

Conversation

@fire-at-will
Copy link
Copy Markdown
Contributor

Description

Contains the changes needed to make the purchase tester work with the Galaxy Store

### Description
Introduces the scaffolding for several classes that will be foundational
to Samsung development as we move forward:
- `GalaxyBillingWrapper`: implementation of `BillingAbstract`. The class
currently satisfies all of the BillingAbstract's requirements, but all
functions are stubbed with `TODO`s
- `GalaxyPurchasingData`: will be used when processing samsung purchases
- `GalaxyStoreProduct`: represents a product from the Samsung store
### Description
Adds the `GALAXY` to the list of supported Store types. 

> Note: This PR will have one failing integration test for the Customer
Center's localized strings not containing the Galaxy Store string until
a backend PR has been merged.
### Description
This PR creates a new module for the Galaxy Store, and allows developers
to set up the Android SDK to use the Galaxy Store when they configure
the SDK, like so:

```kotlin
val configuration = GalaxyConfiguration.Builder(
     context,
     apiKey,
     GalaxyBillingMode.PRODUCTION,
).build()

Purchases.configure(configuration)
```

It also:
- Introduces `GalaxyBillingMode`, an enum required when configuring the
SDK to use the Galaxy Store, which determines the environment that the
Galaxy Store processes IAPs with (prod, test, etc.).
- When a Galaxy configuration is used, `BillingFactory` will wire up a
`GalaxyBillingWrapper`
- Adds unit tests :)
…er (#2906)

### Description
The Galaxy Store doesn't support fetching the current storefront/country
code or showing in-app messages, so this PR:
- Logs + throws an error when `GalaxyBillingWrapper.getStorefront()` is
called
- Adds docs explaining that the storefront functions/properties aren't
supported for the Galaxy Store
- Adds a comment to `GalaxyBillingWrapper` to explicitly call out that
in-app messages aren't supported
@fire-at-will fire-at-will changed the base branch from main to samsung-dev December 19, 2025 20:06
### Description
Found an error edge case where we weren't calling `finish()`. This PR
updates it so that we do call finish() and future requests can execute.
Base automatically changed from samsung-dev to main March 11, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant