android架构就我的感觉来说,更多的专注于功能性,更多的是以一种快速开发模板的形式存在的,这一点在我使用异步网络访问框架volley时可以明显的感觉到,封装了线程池,设计了缓存,使得我们只需要简单的调用就可以很好的实现一个网络访问框架。而且细细想来android本身就是一个良好的网络访问框架。个人觉得是因为移动端硬件限制,以及移动app更新频繁的特性决定的。
对于我们开发者来说,更重要的是专注业务逻辑的实现,划分好模块,高内聚低耦合,抽象业务逻辑设计便于功能扩展,兼职以良好的设计模式,尽量写出漂亮的代码。
这样的模式就决定了,在android项目中,各种各样的第三方类库会像搭积木一样添加到你的android项目中。多去git上读一读高质量的代码,至于架构,为唯手熟尔。
这里简单介绍一下android studio使用gradle添加第三方类库的方法,以slidingmenu为例,我们在git上git clone项目,将其复制到自己的项目中,要想让其为我所用,我们要修改两个文件,第一个整个项目的settings.gradle,添加的代码也很简单
include ':slidingmenu_library'
include ':pM'
接着是我们自己的项目下的build.gradle,添加
dependencies {
//此处是关键
compile project(':slidingmenu_library')
compile 'com.github.lecho:hellocharts-library:1.5.8@aar'
compile 'com.mcxiaoke.volley:library:1.0.18'
compile 'nl.qbusict:cupboard:2.1.2'
compile files('src/main/jniLibs/BaiduLBS_Android.jar')
compile files('src/main/jniLibs/locSDK_6.03.jar')
}
当然为了保证心添加的第三方类库 不跟本身项目的文件冲突,你可能需要对slidingmenu的build.gradle和manifest.xml做出修改,这里随意贴一下我的吧
apply plugin: 'com.android.library'
def var = android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
minSdkVersion 16
targetSdkVersion 23
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
var
dependencies {
compile 'com.android.support:support-v4:23.1.0'
}
android {
compileSdkVersion 23
buildToolsVersion '23.0.1'
}