注册:用于测试Play商店帐单的Android库和应用

  • Z3_962314
    了解作者
  • 525.8KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-01 04:34
    上传日期
注册:用于测试Play商店帐单的Android库和应用
Register-master.zip
内容介绍
[![Build Status](https://travis-ci.org/nytimes/Register.svg?branch=master)](https://travis-ci.org/nytimes/Register) ![Register Logo](https://github.com/nytm/register/blob/master/images/register-logo.png?raw=true) Register is an Android library for easier testing of Google Play's In-app Billing. [Blog Post](https://open.nytimes.com/register-better-in-app-billing-testing-on-android-73af5fcc36dc) ### The Problems: + Google Play Billing implementations on Android are hard to get right + When payments are involved, developers sleep better having a way to test their functionality prior to release + Before an app is promoted to Alpha in the Play Store, we do not have an offical way to test payments The New York Times Android Team developed a fake implementation of Google Play Billing called Register, which can be used as a companion app for testing Play Billing purchases and subscriptions. Similar to a mock web server, you can point your app to use Register rather than the real Play Store In-app Billing implementation. Using Register, you'll be able to validate in-advance whether your purchasing flows work correctly. Register has been used to test purchasing flows of our [Flagship Reader App](https://play.google.com/store/apps/details?id=com.nytimes.android&hl=en) and [NYT Crosswords App](https://play.google.com/store/apps/details?id=com.nytimes.crossword&hl=en) for three years and counting. ![Register Sample](https://github.com/nytm/register/blob/master/images/registerCompanion.png?raw=true) ### Overview Register is a companion app and library that allows seamless mocking of responses from Google Play Store Billing. Register works by implementing the same interface as the Google Play Store Billing library [Google Play Billing](https://developer.android.com/google/play/billing/billing_overview). You can find a sample app that highlights the features of Google Play Billing here: [Classy Taxi](https://github.com/qinci/android-play-billing/tree/master/ClassyTaxi) From a client's perspective, there is no difference in how you work with Google Play Billing or Register's implementation. If you've used [Amazon's IAP Tester Utility](https://developer.amazon.com/public/apis/earn/in-app-purchasing/docs-v2/testing-iap), you'll find Register's workflow to be very familiar. ### Using Register You can find the latest version of Register in the [Releases Tab](https://github.com/nytm/Register/releases) **Step 0:** Register needs a configuration file that declares the mock purchases, subscriptions and users that you will be testing against. Here's a sample that we use at NYTimes. The format needs to be the same as below when creating your own fake purchases. This JSON file (`register.json`) should be included in the assets folder of your module. ```json { "skus": { "register.sample.iap": { "type": "inapp", "price" : "1.00", "title" : "Sample In App Purchase Item", "description" : "This is an in app purchase item for use with Register sample app", "package" : "com.nytimes.android.external.register" }, "register.sample.sub": { "type": "subs", "price" : "10.00", "title" : "Sample Subscription Item1", "description" : "This is a subscription item for use with Register sample app", "package" : "com.nytimes.android.external.register" } }, "users": [ "user1@register.nytimes.com", "user2@register.nytimes.com" ] } ``` For Register to find the aforementioned configuration file (in case you change name or location), you need to change the data contained in the `configuration\configuration.properties` file: ``` ide.json.path=subfolder/from/root file.json.name=newFileName.json ``` **Step 1:** Add Register as a dependency to your client app, this will install the companion app: ```groovy compile 'com.nytimes.android:register-app:0.0.8' compile 'com.nytimes.android:register:0.0.8' ``` or, on Android Gradle Plugin 3.0 or later: ```groovy implementation 'com.nytimes.android:register-app:0.0.8' implementation 'com.nytimes.android:register:0.0.8' ``` **Step 2:** Create a test Google Service Provider (or a real provider): ```java private void initGoogleServiceProvider() { if (prefsManager.isUsingTestGoogleServiceProvider()) { googleServiceProvider = new GoogleServiceProviderTesting(); } else { googleServiceProvider = new GoogleServiceProviderImpl(); ``` **Step 3:** Make a purchase, similar to how you would with the regular In-app Billing API. ![Register Sample](https://github.com/nytm/register/blob/master/images/purchase.png?raw=true) **Step 4:** Go to the companion app to view the purchase. ![Register Sample](https://github.com/nytm/register/blob/master/images/purchased.png?raw=true) ### Fully Configurable (Configuration App) Register's companion app allows you to view both successful and unsuccessful purchases directly on your Android device. Additionally, you can control responses back to your client app for values such as `getSkuDetails`. See the image below for all configurable options on a response. ![Register Sample](https://github.com/nytm/register/blob/master/images/registerCompanion.png?raw=true) ### Sample App **SampleApp** is a client app that showcases working with Register. See [SampleActivity](https://github.com/nytimes/Register/blob/master/sampleApp/src/main/java/com/nytimes/android/external/register/sample/SampleActivity.kt) for a demo of the purchasing flow. ### Gradle **For Android Gradle Plugin 3.0** ```groovy implementation 'com.nytimes.android:register-app:0.0.8' implementation 'com.nytimes.android:register:0.0.8' ``` **For projects using older versions of the plugin** ```groovy compile 'com.nytimes.android:register-app:0.0.8' compile 'com.nytimes.android:register:0.0.8' ```
评论
    相关推荐
    • Android学习
      Android学习Android学习Android学习Android学习Android学习Android学习
    • Android678
      Android678Android678Android678Android678Android678Android678Android678Android678Android678Android678
    • android 例子
      android 例子android 例子android 例子android 例子android 例子
    • android图片
      android精美小图片android精美小图片android精美小图片android精美小图片
    • android课件
      清华老师上课的android课件。ch_01android概述ch_02android开发基础ch_03资源的访问ch_04android用户界面ch_05Ativity和Intent。其他自己看。
    • AndroidKiller
      安卓App反编译工具AndroidKiller\AndroidKiller\AndroidKiller
    • AndroidSample
      Android示例 这是一个示例Android应用,用于降低Google Play服务和Android Volley的使用率。 有关更多详细信息,请参阅以下链接: Google Play服务: Android凌空抽射:
    • android source
      android 源代码 source android 源代码 source android 源代码 source android 源代码 source android 源代码 source android 源代码 source android 源代码 source
    • Android 教程
      Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android 案例 教程,Android ...
    • android资料
      Android程序员指南 Android_UI开发专题 Android程序开发初级教程 android的五大类各种常用类的资料整理 Android高手进阶教程