public final class PurchasingService
extends android.app.Service
Presents the primary API for interacting with the Amazon Appstore purchasing framework. First register a
PurchasingListener
instance via
registerListener(Context, PurchasingListener)
before using any other API.
You must add the following entry in your AndroidManifest.xml file:
<!-- Include these lines in your AndroidManifest.xml -->
<service
android:exported="true"
android:name="com.amazon.device.iap.PurchasingService"/>
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SDK_VERSION
Indicates the release version of the API for making in-app purchases.
|
START_CONTINUATION_MASK, START_FLAG_REDELIVERY, START_FLAG_RETRY, START_NOT_STICKY, START_REDELIVER_INTENT, START_STICKY, START_STICKY_COMPATIBILITY, STOP_FOREGROUND_DETACH, STOP_FOREGROUND_REMOVE
ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ALARM_SERVICE, APP_OPS_SERVICE, APPWIDGET_SERVICE, AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT, BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_OOM_MANAGEMENT, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_EXTERNAL_SERVICE, BIND_IMPORTANT, BIND_NOT_FOREGROUND, BIND_WAIVE_PRIORITY, BLUETOOTH_SERVICE, CAMERA_SERVICE, CAPTIONING_SERVICE, CARRIER_CONFIG_SERVICE, CLIPBOARD_SERVICE, COMPANION_DEVICE_SERVICE, CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, CROSS_PROFILE_APPS_SERVICE, DEVICE_POLICY_SERVICE, DISPLAY_SERVICE, DOWNLOAD_SERVICE, DROPBOX_SERVICE, EUICC_SERVICE, FINGERPRINT_SERVICE, HARDWARE_PROPERTIES_SERVICE, INPUT_METHOD_SERVICE, INPUT_SERVICE, IPSEC_SERVICE, JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, LAUNCHER_APPS_SERVICE, LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE, MEDIA_PROJECTION_SERVICE, MEDIA_ROUTER_SERVICE, MEDIA_SESSION_SERVICE, MIDI_SERVICE, MODE_APPEND, MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS, MODE_NO_LOCALIZED_COLLATORS, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NETWORK_STATS_SERVICE, NFC_SERVICE, NOTIFICATION_SERVICE, NSD_SERVICE, POWER_SERVICE, PRINT_SERVICE, RECEIVER_VISIBLE_TO_INSTANT_APPS, RESTRICTIONS_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, SHORTCUT_SERVICE, STORAGE_SERVICE, STORAGE_STATS_SERVICE, SYSTEM_HEALTH_SERVICE, TELECOM_SERVICE, TELEPHONY_SERVICE, TELEPHONY_SUBSCRIPTION_SERVICE, TEXT_CLASSIFICATION_SERVICE, TEXT_SERVICES_MANAGER_SERVICE, TV_INPUT_SERVICE, UI_MODE_SERVICE, USAGE_STATS_SERVICE, USB_SERVICE, USER_SERVICE, VIBRATOR_SERVICE, WALLPAPER_SERVICE, WIFI_AWARE_SERVICE, WIFI_P2P_SERVICE, WIFI_RTT_RANGING_SERVICE, WIFI_SERVICE, WINDOW_SERVICE
Constructor and Description |
---|
PurchasingService() |
Modifier and Type | Method and Description |
---|---|
static RequestId |
getProductData(java.util.Set<java.lang.String> skus)
Initiates a request to retrieve item data of up to one-hundred
SKUs.
|
static RequestId |
getPurchaseUpdates(boolean reset)
Initiates a request to retrieve updates about items the customer has
purchased and/or canceled.
|
static RequestId |
getUserData()
Initiates a request to retrieve the user ID of the currently logged-in user.
|
static void |
notifyFulfillment(java.lang.String receiptId,
FulfillmentResult fulfillmentResult)
Notifies Amazon about the purchase fulfillment.
|
android.os.IBinder |
onBind(android.content.Intent intent) |
static RequestId |
purchase(java.lang.String sku)
Initiates a purchase-flow for a product.
|
static void |
registerListener(android.content.Context appContext,
PurchasingListener listener)
Before invoking operations in this class, register a
PurchasingListener and its Context. |
dump, getApplication, onConfigurationChanged, onCreate, onDestroy, onLowMemory, onRebind, onStart, onStartCommand, onTaskRemoved, onTrimMemory, onUnbind, startForeground, stopForeground, stopForeground, stopSelf, stopSelf, stopSelfResult
attachBaseContext, bindService, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingPermission, checkCallingUriPermission, checkPermission, checkSelfPermission, checkUriPermission, checkUriPermission, clearWallpaper, createConfigurationContext, createContextForSplit, createDeviceProtectedStorageContext, createDisplayContext, createPackageContext, databaseList, deleteDatabase, deleteFile, deleteSharedPreferences, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAssets, getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir, getContentResolver, getDatabasePath, getDataDir, getDir, getExternalCacheDir, getExternalCacheDirs, getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs, getFilesDir, getFileStreamPath, getMainExecutor, getMainLooper, getNoBackupFilesDir, getObbDir, getObbDirs, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getResources, getSharedPreferences, getSystemService, getSystemServiceName, getTheme, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isDeviceProtectedStorage, isRestricted, moveDatabaseFrom, moveSharedPreferencesFrom, openFileInput, openFileOutput, openOrCreateDatabase, openOrCreateDatabase, peekWallpaper, registerReceiver, registerReceiver, registerReceiver, registerReceiver, removeStickyBroadcast, removeStickyBroadcastAsUser, revokeUriPermission, revokeUriPermission, sendBroadcast, sendBroadcast, sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcastAsUser, sendStickyBroadcast, sendStickyBroadcastAsUser, sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser, setTheme, setWallpaper, setWallpaper, startActivities, startActivities, startActivity, startActivity, startForegroundService, startInstrumentation, startIntentSender, startIntentSender, startService, stopService, unbindService, unregisterReceiver
public static final java.lang.String SDK_VERSION
public android.os.IBinder onBind(android.content.Intent intent)
onBind
in class android.app.Service
public static void registerListener(android.content.Context appContext, PurchasingListener listener)
PurchasingListener
and its Context. After registering your
PurchasingListener implementation, you can receive callbacks from the
in-app purchasing SDK after you invoke operations on PurchasingService.listener
- PurchasingListener
to register.appContext
- application context.public static RequestId getUserData()
PurchasingListener.onUserDataResponse(com.amazon.device.iap.model.UserDataResponse)
gets called when a response is available.public static RequestId purchase(java.lang.String sku)
PurchasingListener.onPurchaseResponse(PurchaseResponse)
gets called.sku
- Vendor SKU for which to initiate a purchase.PurchaseResponse
received by the
PurchasingListener.onPurchaseResponse(PurchaseResponse)
callback.public static RequestId getProductData(java.util.Set<java.lang.String> skus)
PurchasingListener.onProductDataResponse(com.amazon.device.iap.model.ProductDataResponse)
gets called.skus
- Set of SKUs. If the size of the set is greater than 100,
an IllegalArgumentException is thrown.ProductDataResponse
received
by the
PurchasingListener.onProductDataResponse(com.amazon.device.iap.model.ProductDataResponse)
callback.public static RequestId getPurchaseUpdates(boolean reset)
PurchasingListener.onPurchaseUpdatesResponse(com.amazon.device.iap.model.PurchaseUpdatesResponse)
(PurchaseUpdatesResponse) gets called.reset
- Set to true to get a list of all purchases. Set to false to
get a list of all purchases made since the last invocation.PurchaseUpdatesResponse
received
by the
PurchasingListener.onPurchaseUpdatesResponse(com.amazon.device.iap.model.PurchaseUpdatesResponse)
callback.public static void notifyFulfillment(java.lang.String receiptId, FulfillmentResult fulfillmentResult)
receiptId
- Receipt ID of the purchase.fulfillmentResult
- Result of the fulfillment.