标签:android class code java http tar
软件需求:
创建项目
在Application name field输入BuildSystemExample
项目结构 Android studio 项目包含一个默认的 app module
|
Component |
Location |
|
Source files |
app/src/main/java/<package>/ |
|
Resource files |
app/src/main/res/ |
|
Manifest file |
app/src/main/AndroidManifest.xml |
|
Build file |
app/build.gradle |
新增library modile
在window窗口中选择 Android Library,然后next 3.保持默认不变,一直next,在Activity Name field 输入LibActivity1,然后finish。
这个项目包含两个modules,每个module都含有一个Activity。
从一个library module打开Activity 在这个例子中,在app module中的MainActivity将打开lib module的LibActivity1‘
打开爱app module的MainActivity,找到app/src/main/res/layout/activity_main.xml,对文件中的代码进行替换,如下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.buildsystemexample.app.MainActivity">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button1"
android:onClick="onButton1Clicked"/>
</LinearLayout>
在这个文件中找到android:text="@string/button1",然后快捷键 Alt+Enter.,根据提示,在string resource 增加value "Open LibActivity1"。
同样找到android:onClick="onButton1Clicked",快捷键 Alt+Enter.,根据提示,在MainActivity增加onButton1Clicked method.
public void onButton1Clicked(View view) {
Intent intent = new Intent(this, LibActivity1.class);
startActivity(intent);
}
快捷键 Alt+Enter.,根据提示,对各个错误点进行import。
在libray module中增加dependency
...
dependencies {
...
compile project(":lib")
}
构建项目
点击build--Make Project
可以通过查看在windows 窗口的右边部分的Gradle Console,查看是否成功。
如果想查看可用的build tasks,可以点击在IDE 有窗口的Gradle,双击任意一个build task就可以运行。 在app/build/apk会生成apk。
命令行 Gradle构建
On Windows
> gradlew.bat assembleDebug
On Mac OS and Linux platforms, type these commands:
$ chmod +x gradlew $ ./gradlew assembleDebug
查看一系列的build tasks,命令如下
$ ./gradlew tasks
Build release version
在IDE的右侧,点击Gradle,展开BuildSystemExample.然后在展开:app,双击assembleRelease。
基础结构
apply plugin: ‘android‘
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
defaultConfig {
minSdkVersion 8
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
signingConfigs {//对apk进行签名
release {
storeFile file("myreleasekey.keystore")
storePassword "password"
keyAlias "MyReleaseKey"
keyPassword "password"
}
}
buildTypes {//混淆代码,proguard-android.txt是Android sdk自带的,proguard-rules.txt是新增的
release {
runProguard true
proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.txt‘
signingConfig signingConfigs.release//签名配置
}
}
}
dependencies {‘‘‘声明dependencies‘‘‘的3种方式
// Module dependency
compile project(":lib")
// Remote binary dependency
compile ‘com.android.support:appcompat-v7:19.0.1‘
// Local binary dependency
compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
}
参考资料:http://developer.android.com/sdk/installing/studio-build.html#configBuild
Android studio Gradle 构建,布布扣,bubuko.com
标签:android class code java http tar
原文地址:http://www.cnblogs.com/zust-zbt/p/3784302.html