AndroidStudio中配置使用AndBase

GitHub demo: https://github.com/sanyinchen/MyRssReader

AndroidStudio中使用了Gradle来构建项目,看起来挺高大上的样子,但是实在是用不习惯,特别对于刚上手的人来说。但是AndroidStudio以后肯定会成为主流的IDE,所以还是硬着头皮开始接触。

AndroidStudio和Eclipse/ADT引入jar包不太一样,以前的话直接右击项目->属性,buildpath,万事大吉。但是AndroidStudio中必须需要在Build.gradle中手动配置。

对于新手来说实在是不怎么习惯,至于添加第三方代码库的话那更是让我纠结了好久,在忍受着翻墙这只有几K的下载速度和一大波各种红bu g之后终于配置出来了。

我们拿这个开源的UI框架做例子:Andbase。至于Library大家百度一下AndBase然后去官网下载吧。

首先将AndBase复制到工程目录里,与app这个目录同级,具体是这个样子:

好,这是第一步,然后找到setting.gradle这个文件,在include后面添加’:AndBase’:

然后找到app下的build.gradle ,打开后在dependencies里加上:compile project(‘AndBase’)

最后一步在AndBase下建立一个build.gradle文件,并将下面的内容复制进去:

buildscript {

repositories {

mavenCentral()

}

dependencies {

classpath ‘com.android.tools.build:gradle:0.12.+’

}

}

apply plugin: ‘android-library’

repositories {

mavenCentral()

}

android {

compileSdkVersion 19

buildToolsVersion “20.0.0″

defaultConfig {

minSdkVersion 14

targetSdkVersion 19

}

sourceSets {

main {

manifest.srcFile ‘AndroidManifest.xml’

java.srcDirs = [‘src’]

resources.srcDirs = [‘src’]

aidl.srcDirs = [‘src’]

renderscript.srcDirs = [‘src’]

}

}

}

dependencies {

// compile ‘com.android.support:appcompat-v7:19.0.+’

compile files(‘libs/gson-2.0.jar’)

compile files(‘libs/android-support-v13.jar’)

}

然后Build/Rebuild project如果没有问题,那说明你已经构建成功了

要是真这样的话,那我感觉你的运气好的有点爆棚。或者说是好巧…

因为你建的项目使用的sdk版本和我使用的sdk版本是一样的,如果出现错误的话首先根据你的AndroidMainfest文件调节一下sdk的编译版本,最小版本以及目标版本。

大家如果细心的话可以看见这里:

dependencies {

// compile ‘com.android.support:appcompat-v7:19.0.+’

compile files(‘libs/gson-2.0.jar’)

compile files(‘libs/android-support-v13.jar’)

}有一句话被注释起来了,否则的话会编译不成功但是构建是没问题的,问题在于android-support-v13.jar引用了两次,所以 将第一句话注释掉,但是得先将android-support-v13.jar作为library加进去:右击android-support- v13.jar,在最下面会有一个add as library .

第二个错误时在构建的时候AndBase的androidmainfeest.xml文件可能会提示:

android:icon=”@drawable/ic_launcher”android:label=”@string/app_name”

这两个文件缺失,删掉就可以了,反正也用不到

其他的就是一些奇葩的错误了,其实就是刚上手,对Androidstudio和gradle不熟悉的原因,这里就不一一举例了,大家可以google一下,百度的话我估计找不出来答案….

如果这一切都解决了我们来试试看看这个andbase是不是正常导入了,我们来做一个简单地测试,让Activity继承AbActivity,并且在TextView上输出一句话:Hello AndBase.

然后打开layout.xml你可能会发现一个错误

“Couldn’t resolve resource” in Android Studio’s Preview

你可以file/invalidate Caches/Restart/just restart就可以了。

最后简单修改一下MainActivity的代码:public class MainActivity extends AbActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Log.i(“AndBase”, “AndBase—–started”);

TextView mtexview = (TextView) findViewById(R.id.andbaseviewtext);

mtexview.setText(“Hello AndBbase”);

运行:

LOG:

AndBase导入正常。