如何设置android studio run release

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置android studio run release相关的知识,希望对你有一定的参考价值。

android Studio使用教程(一)中简要介绍了Android Studio的基本使用,包括安装、新建工程、工程结构以及主题设置。今天接着讲第二篇,主要包括如下内容:
从Eclipse导入工程到Android Studio
Eclipse工程与Android Studio的区别
真机运行以及常用快捷键
需要重申一下,我所有的操作与版本是基于Mac系统,在Windows上的同学基本类似(作为一个技术人员,这些应该都不是问题大笑),下面就分主题开始吧:

一、从Eclipse导入工程到Android Studio
根据官方的介绍,Android Studio可以兼容Eclipse的现有工程,但需要做一些操作:
首先升级ADT到最新版本,目前为版本号为22(注意和ADT相关的组件最好一并升级,避免后期可能出现的错误)
选择需要从Eclipse导出的工程,右键选择Export并选择Android下的Generate Gradle Build Files(如下图):

选择完毕后并不会导出到其他地方,而是在本地工程生成了一个build.gradle文件,在Eclipse工程中也可以看到,这个文件是Android Studio识别的,如下图:

3.随后进入Android Studio并选择Import Project,可以看到刚刚在Eclipse中的项目图标变成了一个Android机器人图标,说明转换成功,这时候选择工程导入即可:

至此,就完成了从Eclipse导入现有Android工程到Android Studio,现在可以开始对工程进行操作了!

二、Eclipse工程与Android Studio的区别
Eclipse工程可以导入Android Studio运行,而反过来在Android Studio建立的工程不能在Eclipse中运行;
二者的工程结构不一样,在Eclipse中一个Project就代表一个项目工程,而在Android Studio中就和Intellij一样,一个Project代表一个工作空间,相当于Eclipse中的workspace,而在Android Studio中一个Module就相当于Eclipse中的一个Project,这个概念需要弄明白,不要混了或觉得糊涂了。
在编辑操作上,在Eclipse中编辑修改后必须手动command+s保存文件,而在Android Studio中就和Intellij一样是自动保存的,这一点和第二点和Xcode也是类似的。
工程目录上的区别,在Eclipse中src部分一般是java文件,res部分是资源文件,包括布局文件和多媒体资源等。在Android Studio中,可以看下图的目录结构:

包括java文件和资源文件全部放到了src目录下,src目录下包括一个main文件夹,再下面就是java文件夹和res文件夹,其实这里,java文件夹就相当于Eclipse中的src,res还是那个res,这里想起了本山老师的小品“src已经不是那个src了,res还是那个res”大笑

三、真机运行以及常用快捷键
在Android Studio中点击界面下方的Android选项卡可以看到Device信息和Logcat,连上设备后打开Android选项卡会检测真机,成功后会显示在Device中,点击顶部的绿色小箭头就可以开始运行工程了。有一点需要注意的是,运行时可以选择模拟器也可以选择真机,由于在Android Studio中运行工程的时候有一个Device优先级选择,如果不设置的话可能会出现只运行在模拟器上的现象,我们可以自行设置一下:先点击Run菜单选择Run Configuration,并选择你想选择的目标设备,可以是模拟器和真机,也可以在运行选由用户选择:

快捷键大家可以对照官方文档进行熟悉,如下表,也可以自己修改配置选项进行自定义:

个人觉得Android Studio还是有一定的前景的,这里就需要Google不断进行完善和改进了,赶紧把大家从Eclipse中解救出来吧。另外,在此期间,大家其实可以尝试使用一下Intellij IDEA,这个默认也是集成Android开发环境的。Android Studio是基于前者改进而来,二者在使用上差不多,也是Eclipse的一个不错的替代者。后期有时间我会记录一篇专门使用Intellij IDEA开发Android的文章!
参考技术A debuggable:表示是否可以在手机上调试程序。

在Eclipse中,只有android:debuggable="true"时我们才可以在手机上调试Android程序。

但是当我们没在AndroidManifest.xml中设置其debug属性时:

使用Eclipse运行这种方式打包时其debug属性为true,使用Eclipse导出这种方式打包时其debug属性为法false.

在使用ant打包时,其值就取决于ant的打包参数是release还是debug.

因此在AndroidMainifest.xml中最好不设置android:debuggable属性置,而是由打包方式来决定其值。。

zipalign:

Android SDK中包含一个“zipalign”的工具,它能够对打包的应用程序进行优化。
在你的应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效率。
因此,这种方式能够让应用程序和整个系统运行得更快。
我们强烈推荐在新的和已经发布的程序上使用zipalign工具来得到优化后的版本——即使你的程序是在老版本的Android平台下开发的。
runProguard:代码是否做混淆的操作

ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。

可以删除没用的注释,最大限度地优化字节码文件。

它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。本回答被提问者采纳
参考技术B

    在Android studio左侧边栏点开Build Variants

    找到对应的Module,将它的Build Variant从debug改成release

    在project栏右键选中的Module,打开Open Module Settings

    在signing栏中填入release对应的配置信息release config,在Build Types的Debuggable设为false(关於release config 主要填写config Name 、release key 以及psw等信息,store file需要自己的jks文件路径),完成後点OK保存

    编译後即可产生release apk

参考技术C debuggable:表示是否可以在手机上调试程序。

在Eclipse中,只有android:debuggable="true"时我们才可以在手机上调试Android程序。

但是当我们没在AndroidManifest.xml中设置其debug属性时:

使用Eclipse运行这种方式打包时其debug属性为true,使用Eclipse导出这种方式打包时其debug属性为法false.

在使用ant打包时,其值就取决于ant的打包参数是release还是debug.

因此在AndroidMainifest.xml中最好不设置android:debuggable属性置,而是由打包方式来决定其值。。

zipalign:

Android SDK中包含一个“zipalign”的工具,它能够对打包的应用程序进行优化。
在你的应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效率。
因此,这种方式能够让应用程序和整个系统运行得更快。
我们强烈推荐在新的和已经发布的程序上使用zipalign工具来得到优化后的版本——即使你的程序是在老版本的Android平台下开发的。
runProguard:代码是否做混淆的操作

ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。

可以删除没用的注释,最大限度地优化字节码文件。

它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。
参考技术D debuggable:表示是否可以在手机上调试程序。

1.在Eclipse中,只有android:debuggable="true"时我们才可以在手机上调试Android程序。

但是当我们没在AndroidManifest.xml中设置其debug属性时:

2.使用Eclipse运行这种方式打包时其debug属性为true,使用Eclipse导出这种方式打包时其debug属性为法false.

在使用ant打包时,其值就取决于ant的打包参数是release还是debug.

3.因此在AndroidMainifest.xml中最好不设置android:debuggable属性置,而是由打包方式来决定其值。。

zipalign:

4.Android SDK中包含一个“zipalign”的工具,它能够对打包的应用程序进行优化。
在你的应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效率。
因此,这种方式能够让应用程序和整个系统运行得更快。
我们强烈推荐在新的和已经发布的程序上使用zipalign工具来得到优化后的版本——即使你的程序是在老版本的Android平台下开发的。
runProguard:代码是否做混淆的操作

5.ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。

可以删除没用的注释,最大限度地优化字节码文件。

它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。

Android Studio为Android Studio设置HTTP代理

大陆的墙很厚很高,初次安装Android Studio下载SDK等必定失败,设置代理方法如下:

1. 

到android studio安装目录,打开bin目录,编辑idea.properties, 在文件末尾添加:

disable.android.first.run=true

这将禁用第一次运行


2.

再次打开android studio将进入欢迎页面,点击Config..., 搜索HTTP,即可设置HTTP代理


3.

删掉Step 1 中所加的那一行,再次启动android studio,就可以使用你的HTTP代理下载SDK等组件了。


Android SDK 在线更新镜像服务器资源:

大连东软信息学院镜像服务器地址:
http://mirrors.neusoft.edu.cn 端口:80
北京化工大学镜像服务器地址:
- IPv4: http://ubuntu.buct.edu.cn/ 端口:80
- IPv4: http://ubuntu.buct.cn/ 端口:80
- IPv6: http://ubuntu.buct6.edu.cn/ 端口:80
上海GDG镜像服务器地址:
http://sdk.gdgshanghai.com 端口:8000

使用方法:
1,启动 Android SDK Manager ,打开主界面,依次选择『Tools』、『Options...』,弹出『Android SDK Manager - Settings』窗口;
2,在『Android SDK Manager - Settings』窗口中,在『HTTP Proxy Server」和「HTTP Proxy Port』输入框内填入上面镜像服务器地址和端口,并且选中『Force https://... sources to be fetched using http://...』复选框。设置完成后单击『Close』按钮关闭『Android SDK Manager - Settings』窗口返回到主界面;
3,依次选择『Packages』、『Reload』。



以上是关于如何设置android studio run release的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio HTTP Proxy怎么设置

android studio 中的http proxy怎么设置

如何开启解决android studio的模拟器的问题

如何为 Android Studio 3.0 禁用 Instant Run

Android Studio为Android Studio设置HTTP代理

WebView JavaScript 接口似乎只能通过 Android Studio 的 Instant-Run 工作,但不能通过常规 gradle 编译