Android 开发小贴士

jopen 8年前

AndroidTips

A collections of tips in Android developing.

前言

我们在日常开发中,会遇到各种各样的问题,或大或小。正是通过解决这些问题,使得我们的开发技能得到进步。养成记录的好习惯,方便自己日后查看,也方便广大开发者能找到自己遇到的问题的解决方案。

PS:持续更新中(last update date:2016-01-26 22:05)

目录

一.模拟器

二.Android Studio

三.Gradle

四.Android四大组件

五.动画

六.View

七.XML

八.Java

九.混淆

十.优化

十一.优秀开发资料

十二.值得关注的Android大牛

十三.Canvas

十四.学习方法总结

十五.Kotlin

正文

一.模拟器

1.genymotion模拟器如何锁屏?

答:在模拟器的设置-->安全-->屏幕锁定-->选择除<>以外的其他选项。 然后点击模拟器的电源按钮即可锁屏(或在命令行中输入adb shell keyevent 26原理和按电源键一样,模拟电源键点击事件)

参考链接:http://stackoverflow.com/questions/29292060/how-to-lock-genymotion

2.genymotion模拟器如何打开输入法软键盘?

答:在设置输入法选项中,关闭物理键盘即可。

3.genymotion如何安装谷歌服务?

答: http://stackoverflow.com/questions/17831990/how-do-you-install-google-frameworks-play-accounts-etc-on-a-genymotion-virt

二.Android Studio

1.Andorid Studio中有哪些好用的插件?

答:

1>.GsonFormat:用json数据一键生成JavaBeans

2>. ADB Idea:ctrl + Shift + A 查找中添加常用卸载安装app的一些操作,无需命令行

3>.android-parcelable-intellij-plugin 快速实现parcelable序列化

4>.android-butterknife-zelezny ButterKnife生成器,快速生成View声明代码

5>.Android WiFi ADB 使用WiFi连接而不需要USB连接Android设备达到安装、运行、调试应用的目的。

2.Android Studio提升效率的技巧文章

答:

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-1/

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-2/

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-3/

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-4/

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-5/

http://www.developerphil.com/android-studio-tips-of-the-day-roundup-6/

3.更新Android Studio报如下错误如何解决?

Android Studio: Error:/android-studio/gradle/gradle-2.4/lib/plugins/gradle-diagnostics-2.4.jar (No such file or directory)

更新Android Studio后,Gradle的也得到了更新。cd到gradle文件夹下查看里面gradle文件夹的名字。例如gradle-2.8。然后在Android Studio中依次打开Module Settings->Project,将Gradle version改成和之前文件夹对应的版本。Rebuild项目就好了。

4.Android Studio的常用快捷键?

答:

1.快速生成get,set代码(Command+N)

2.查找方法(Find Action)(Command+Shift+A)

5.Android Studio中开启DDMS?

答:在Android中,依次点击Tools->Android->Android Device Monitor

6.Android Studio与Gradle教程

答:

1.拥抱 Android Studio 之一:从 ADT 到 Android Studio

2.拥抱 Android Studio 之二:Android Studio 与 Gradle 深入

3.拥抱 Android Studio 之三:溯源,Groovy 与 Gradle 基础

三.Gradle

1.Gradle有什么教程?

1.Gradle User Guide 中文版

2.Gradle官方教程

3.灵活强大的构建系统Gradle(美团技术团队)

4.Android官方Gradle教程

5.Gradle官方Training

6.android-studio.org的Gradle教程

7.Android Plugin DSL Reference

8.Gradle脚本基础全攻略

9.深入理解Android之Gradle

10.Android 开发必备知识:我和 Gradle 有个约会(腾讯bugly团队)

2.Gradle在编译的时候报如下错误:Error:Timeout waiting to lock buildscript class cache for build file ,怎么解决?

答:

Windows:删除C:\Users\Administrator.gradle\caches.这个文件夹

OS X:删除~/.gradle/caches这个文件夹

参考:http://stackoverflow.com/questions/31784132/errortimeout-waiting-to-lock-buildscript-class-cache-for-build-file-when-change

3.什么是Gradle,为什么在Android Studio中引进Gradle?

答:

http://stackoverflow.com/questions/16754643/what-is-gradle-in-android-studio

四.Android四大组件

1.Activity

2.Service

3.ContentProvider

4.BroadcastReceriver

五.动画

1.关于动画有什么教程?

1.Android官方

2.tutorialspoint动画教程

3.Android属性动画完全解析(上),初识属性动画的基本用法

4. Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法

5.Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法

6.Using animations in Android application

7 .动画系列 - 传统View动画与Property动画基础及比较

8 .动画系列 - PropertyAnim 详解

9 .动画系列 - PropertyAnim 实际应用

10 .动画系列 - ViewPager动画

11 .Android 动画基础

12 .codepath_android_guides_animations

12 .bignerdranch_frame-animations-in-android

13 .Building Meaningful Motion(Plaid作者Android动画演讲分享)

六.View

1.View是如何绘制的?

1.How Android Draws Views

2.Android视图状态及重绘流程分析,带你一步步深入了解View(一)

3.Android视图状态及重绘流程分析,带你一步步深入了解View(二)

4.Android视图状态及重绘流程分析,带你一步步深入了解View(三)

5.Android视图状态及重绘流程分析,带你一步步深入了解View(四)

2.如何实现自定义View?

1.Android官方教程

2.Android官方教程中文版

3.Creating custom and compound Views in Android - Tutorial

4.Tutorialspoint教程

5. Android自定义View的实现方法,带你一步步深入了解View(四)

6.Canvas and Drawables

3.Android touch事件分发机制

1.Managing Touch Events in a ViewGroup

2.Android事件分发机制完全解析,带你从源码的角度彻底理解(上)

3.Android事件分发机制完全解析,带你从源码的角度彻底理解(下)

4.Android事件传递机制

5.Handling single and multi touch on Android - Tutorial

4.ImageView使用src和background设置图片的区别?

1.http://stackoverflow.com/questions/5454491/what-is-the-difference-between-src-and-background-of-imageview

2.Android 中 imageView 的 Src 和 Background

七.XML

1.为什么在XML代码中有tools命名空间? 代码如下:

<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="wrap_content">              <TextView          android:layout_width="wrap_content"          android:layout_height="wrap_content"          tools:text="0"/>  </LinearLayout>

tools:text,其实就是给ADT用的,用于在design页面能够预览到这个属性的值,但是当实际上运行的时候是看不到这个值的。具体可查看Designtime Layout Attributes

八.Java

1.深入理解Java中的final关键字

2.Java中==和equals的区别

3.Java中的hashCode()方法和equals()方法

九.混淆
  1. Android混淆有什么资料教程?

答:

2.资源混淆有什么好的技术文章?

答:

1.美团Android资源混淆保护实践

2.安装包立减1M--微信Android资源混淆打包工具

十.优化

1.Android内存优化杂谈(微信移动客户端开发团队)

2.如何提高开发效率?(微信移动客户端开发团队)

3.Android 开发绕不过的坑:你的 Bitmap 究竟占多大内存?(腾讯Bugly团队)

十一.优秀开发资料

1.如何寻找优秀开源库?

答:

2.在线查看Android源码的网站:

3.在线书籍:

4.程序员的读书清单

答:

十二.值得关注的Android大牛

国外

国内


CSDN

(PS:*表示Android系统研究)

微信公众号

  • 1.Google开发者(Google_Developers)
  • 2.QQ空间终端开发团队(qzonemobiledev)
  • 3.手机淘宝技术团队MTT(AlibabaMTT)
  • 4.腾讯bugly(weixinBugly)
  • 5.微信移动客户端团队(WeMobileDev)
  • 6.好东西传送门(awesomeport)

注:括号内为微信号

Google+

公司技术团队

Android开发技术资讯网站

十三.Canvas

1.Canvas相关的教程:

十四.学习方法/路线总结

1.Android学习进阶路线导航线路

2. Android学习路线指南

3.Android学习之路

十五.Kotlin
  1. Kotlin官网
  2. Kotlin官网(中文版)
  3. 《Kotlin for android developers》中文版

参与维护

欢迎Pull Request和使用issue

LICENCE

MIT

关于我

网络ID:JohnTsai

Android开发者,手机发烧友。

我的博客:http://www.johntsai.xyz

博客园博客:http://www.cnblogs.com/JohnTsai

邮箱:JohnTsai.Work#gmail.com

项目地址: https://github.com/JohnTsaiAndroid/AndroidTips