最近在试着接入TrPay的sdk,根据它家文档需要导入它们的aar包(paysdk-release-1.2.2.aar)。
在AS中怎么给安卓项目导入aar包,网上搜一下就能看到无非也就下面三步:
1、把aar放到module里的libs目录下。新建安卓项目时,默认的模块名字是app,即放到app/libs/下。
2、在app的build.gradle中加入以下配置。
repositories { flatDir { dirs 'libs' // aar目录 } }
3、在app的build.gradle中dependencies里加入aar引用。
compile(name: 'zbar-release', ext: 'aar')
坑点:上面build.gradle添加的两段代码都是添加到app模块中的build.gradle,而不是项目根目录的build.gradle中!!!
网上搜到了文章都没提到这一点,TrPay的接入文档里也没有说清楚这一点(如下图),写错位置了会报错。对于不熟悉安卓开发的同学,可能会莫名其妙掉到这个坑里。
报错:Could not find method compile() for arguments
因为根目录的build.gradle中默认已有repositories节点,而app的build.gradle中没有,我误以为这两段代码需要分开写到两个build.gradle中了。。。
现在用AS新建了一个安卓项目,并添加一个module取名mylibrary,并删除默认的app模块。项目目录如下。
参考: