标签:
上周Android的官方博客发表声明:Google将在年底结束对Eclipse+ADT的开发以及停止支持,把重心完全转移到Android Studio。对于很多使用Eclipse的Android开发者而言,他们必须接受一个全新的IDE。按照Google的说法,Android Studio非常的智能和强大。这里分享下Android Studio的一些基本体验。
参考原文:Time to Migrate Android Projects to Android Studio
作者:Xiao Ling
翻译:yushulx
这个大家都懂的,用VPN搞定。完整安装包可以用迅雷离线,会比较快。
步骤很简单:
File->New->New Projects
设置好代码路径
最后确定
这个时候编译还不能完全通过,会有一些错误。比如output路径需要设置。Android Studio会有提示,全部fix之后就可以了
Android Studio打开的时候会自动跳出一些小技巧,可以学习下快捷方式:
Ctrl+ALT+Shift+N: 全局搜索任何符号
Ctrl+N: 全局搜索任何类
Ctrl+Shift+A: 查找菜单命令和工具栏功能
Alt+F7: 查找变量的使用
Ctrl+ALT+Shift+S: 打开工程属性
Ctrl+Shift+Enter: 输入圆括号后可以自动添加大括号
Alt+Enter: 自动修复错误
Ctrl+Alt+T: 自动添加一些代码模板,比如try/catch
Shift+Shift: 全局搜索各种文件,类,变量,等等
看一下Android Studio和Eclipse的一些差异
File->New->New Project:
Android Studio会帮你选择目标设备
有各种Activity的模板可以选择。
如果要学习sample,可以从GitHub导入。
Android Studio使用Gradle来构建Android工程。
AndroidManifest.xml和Eclipse中是不一样的。SDK版本都被转移到了build.gradle文件中:
apply plugin: ‘com.android.application‘ android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "dynamsoft.com.demo" minSdkVersion 19 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘ } } } dependencies { compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) compile ‘com.android.support:appcompat-v7:22.2.0‘ }
Android Studio的UI编辑器非常方便,可以实时预览:
在Eclipse中创建自定义View是很麻烦的,很容易出错。Android Studio中是完全自动创建的。只需要点击菜单New -> UI Component -> Custom View就可以了。
对应的文件会自动生成。
要发布app的人需要给apk签名。Android Studio里也是很简单的。
在Android工程中我们经常需要使用第三方的库或者源代码。在Android Studio中提供了3种添加依赖的方式。使用Ctrl+ALT+Shift+S打开工程属性,选择dependencies,可以看到:
Library dependency是从maven的仓库中添加依赖
File dependency是添加代码文件或者jar文件
Module dependency是在工程中创建一个module(比如Zxing的源码),并添加进来
先从GitHub获取源码:
git clone https://github.com/zxing/zxing
创建一个module:
导入Zxing源码:
添加module dependency:
创建一个简单的layout:
<RelativeLayout 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" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivityFragment"> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/editText" android:layout_alignParentStart="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/editText" android:text="Generate QRCode" android:id="@+id/barcode_button" /> <ImageView android:layout_width="400dp" android:layout_height="400dp" android:layout_below="@id/barcode_button" android:id="@+id/barcode" android:background="@color/abc_search_url_text_normal"/> </RelativeLayout>
使用QRCodeWriter生成QR二维码:
public void onClick(View v) { String content = mEditText.getText().toString(); QRCodeWriter write = new QRCodeWriter(); try { int width = mImageView.getWidth(); int height = mImageView.getHeight(); BitMatrix bitMatrix = write.encode(content, BarcodeFormat.QR_CODE, width, height); Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { bitmap.setPixel(i, j, bitMatrix.get(i, j) ? Color.BLACK: Color.WHITE); } } mImageView.setImageBitmap(bitmap); } catch (WriterException e) { e.printStackTrace(); } }
运行效果:
和Eclipse比,Android Studio是全新的体验。Android Studio在使用的时候偶尔会出现卡住,不过功能真的如Google说的非常强大,包含了各种有用的快捷方式,代码智能提示,代码分析等。在熟悉了操作之后,完全不会再想回到Eclipse了。
Google将专注于Android Studio,放弃Eclipse+ADT
标签:
原文地址:http://my.oschina.net/yushulx/blog/475769