Stripe-Android - 分叉并使用自己的库

Adv*_*Dog 7 git android github stripe-payments

我正在集成stripe-android到我的应用程序中,但需要进行一些更改才能使其正确匹配.在这个答案之后,我做了一个叉子并把它作为一个gradle依赖.

链接答案

你可以使用另一种方法来添加github项目的依赖项,使用github repo和jitpack插件在这种情况下你必须添加这个repo tp你的build.gradle

repositories {
     // ...  
     maven { url "https://jitpack.io" }
 } 
Run Code Online (Sandbox Code Playgroud)

和依赖:

dependencies {         
    compile 'com.github.User:Repo:Tag'
}
Run Code Online (Sandbox Code Playgroud)

实施

听起来很容易.所以我创建了一个fork,并进行了我需要的小改动,并按照他们的方案v5.1.1创建了一个新标记.然后我将它添加到我的依赖项中.

dependencies {         
    compile 'com.github.ClickDishes:stripe-android:v5.1.1'
}
Run Code Online (Sandbox Code Playgroud)

所以它能够找到一个版本; 但是,它现在会给我一个错误.

错误:模块'com.github.ClickDishes:stripe-android:v5.1.1'取决于一个或多个Android库但是是一个jar

你可以在这里找到我的标签,https://github.com/ClickDishes/stripe-android/releases/tag/v5.1.1

关于我做错了什么的任何想法?

谢谢.

更新

我一直在研究这个问题,我认为这可能是图书馆设置的一个问题.阅读JitPack上的日志显示了很多关于Android支持类的错误,并且gms.所以我相信它与一些图书馆的搭配并不好.

https://jitpack.io/com/github/ClickDishes/stripe-android/v5.1.1/build.log

  ... 
  symbol:   class LineItem
  location: class CartError
/home/jitpack/build/android-pay/src/main/java/com/stripe/wrap/pay/utils/CartManager.java:9: error: package com.google.android.gms.wallet does not exist
import com.google.android.gms.wallet.Cart;
                                    ^
  ...
Run Code Online (Sandbox Code Playgroud)

然后我将其与stripe:stripe-androidJitPack 上的实际库进行比较,并显示相同的错误.

Bud*_*ius 1

我查了你的仓库,你v在版本中包含了(他们包含了?)实际的字母,所以它是这样的:

dependencies {         
   compile 'com.github.ClickDishes:stripe-android:v5.1.1'
}
Run Code Online (Sandbox Code Playgroud)

你可以在这里看到它:https ://jitpack.io/#ClickDishes/stripe-android/v5.1.1