热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发工程师_Android开发工程师应该知道的50个开发秘诀技巧和资源分享

作者撰写本文的初衷,是为了罗列出android

作者撰写本文的初衷,是为了罗列出android Studio有用的提示、技巧、快捷方式和参考资源,将提高您的整体效率和操作性能。

显然,还有很多优化、快捷方式等,但作者为了保持这篇文章的简短,限制为50个,希望读者会喜欢这篇文章!

InfoQ注:本文是以MacOS X操作Android Studio为例,与Windows / Linux不一致的地方已经标注,请读者注意这一点。

可视化


1.Android Logcat的材料颜色主题(Material Colors theme)。

技术分享

要更改Android Studio Logcat,您需要依次点击:Preferences → Editor → Colors & Fonts → Android Logcat,然后更改每种类型日志的前景颜色。(注意,此处Perferences在Windows / Linux 是Settings。)

我的材料颜色如下:


  • Assert #BA68C8

  • Debug #2196F3

  • Error #F44336

  • Info #4CAF50

  • Verbose #BBBBBB

  • Warning #FF9800


2.防止Android Studio Logcat崩溃,应清除当前应用程序的日志。

要做到这一点,您需要到Android Monitor面板在右侧下拉列表中选择Edit filter configuration。

技术分享

3. 将您的IDE(IntelliJ / Android Studio)应用正确的代码样式。

依次点击Preferences → Code Style → Java,在Scheme下拉列表中选择您的代码样式(或设置一个新的代码样式)。

有2款风格特别值得一提:


  • Square Java Code Styles with Android

  • Google Java Code Style

您可以导入主题,如下面的gif所示:

技术分享

4. 使用分屏可提高效率。

技术分享

要打开此功能,您需要在主屏幕的选项卡上单击鼠标右键,然后选择Split Vertically / Horizontally 。

技术分享

但为了尽可能高效,我们需要设置一个自定义键盘的快捷方式。要做到这一点,依次点击Preferences → Keymap 并找到Split Vertically。然后打开上下文菜单并单击 Add Keyboard Shortcut。

以我为例,对于垂直拆分视图,我增加了control + alt + v。 如下面gif图所示。您也可以为水平分割视图定义快捷方式。

技术分享

5.无干扰模式(Distraction Free Mode)

您可以依次点击: View → Enter Distraction Free Mode来开启无干扰模式。

技术分享

在无干扰模式下,编辑器占用整个IntelliJ IDEA框架,而没有任何编辑器选项卡和工具按钮,代码按中心对齐。

6. 使用活动模板



  • 您可以使用快捷方式:cmd + j(Windows / Linux:ctrl + j)。

技术分享


  • 您可以使用许多已定义的模板,像Toasts 或if条件。

技术分享

技术分享


  • 您可以使用自己的自定义模板。 这里 是 Reto Meier 的一篇参考文章。您还可以参考 IntelliJ IDEA文档 。


快捷方式和有用的命令

1. 最好的、最有用的命令 是Search for command:cmd + shift + a (Windows / Linux:ctrl + shift + a)。

当你想关闭当前选项卡,不知道该怎么办时,您只需键入:close你会得到一个正确的快捷方式/命令。

2. 从最近的复制/粘贴中选择 (管理剪贴簿):

cmd + shift + v(Windows / Linux:ctrl + shift + v)。

默认情况下,最后有5个复制/粘贴项目。

技术分享

剪贴板堆栈的深度在“设置”对话框的“编辑器”页面的“限制”部分中配置。超过指定的数量时,将从列表中删除最早的条目。 

3. 启用多光标(multicursor)功能: control + g(Windows / Linux:alt + j)。

技术分享

有关此功能的 详细文章 由 Bartek Lipinski 在Medium网站提供。 强烈推荐!

4. Open a class : cmd + o (Windows / Linux:ctrl + n)。

5. Open any file :cmd + shift + o (Windows / Linux:ctrl + shift + n)。

6. Open symbol : cmd + option + o (Windows / Linux:alt + shift + n)。

7. Go to implementation : cmd + option + b (Windows / Linux:ctrl + alt + b)。

假设您有一个界面,通过单击接口的名称,然后单击 Go to implementation 的快捷方式,您将被重定向到实现该接口的类。

8. Go to declaration : cmd + b (Windows / Linux:ctrl + b)。

它允许您快速检查并转到类、方法或变量的声明。

9. Go to type declaration : control + shift + b(Windows / Linux:ctrl + shift + b)。

假设您如此定义:

Employee employee = new Employee(“Michal”);

当你的插入符号employee并单击快捷方式时,将会被重定向到Employee类。

10. Go to super : cmd + u(Windows / Linux:ctrl + u)。

例如,您重写一些方法。当你在方法名称插入符号,并单击转到 Go to super 快捷方式,您将被重定向到父方法。

11. Move between tabs : cmd + shift + [ 或 cmd + shift + ] (Windows / Linux:alt + ← / →)。

12. Move between Design / Text tabs in layout’s view : control + shift + ← / →(Windows / Linux:alt + shift + ← / →)。

13. Close a current tab: cmd + w(Windows / Linux:ctrl + shift + a)。

14. Hide all windows : cmd + shift + F12 (Windows / Linux:ctrl + shift + F12)。

15. Minimize Android Studio instance : cmd + m(Windows / Linux:ctrl + m)。

16. Format your code: cmd + option + l (Windows / Linux:ctrl + alt + l)。

17. Auto-indent lines : control + option + i (Windows / Linux:ctrl + alt + i)。

18. Implement methods : control + i (Windows / Linux:ctrl + i)。

假设您实现了一个接口,然后只需单击此快捷方式,即可快速导入该界面提供的所有方法。

19. Smart code completion (按期望类型过滤方法和变量的列表):control + shift + space (Windows / Linux:ctrl + shift + space)。

20. Find : cmd + f(Windows / Linux: ctrl + f)。

21. Find and replace :cmd + r(Windows / Linux: ctrl + r)。

22. Move hardcoded strings to resources : option + return (Windows / Linux: alt + enter)。

当在文本上使用插入符号时,必须使用快捷方式。检查下面的gif:

技术分享

如果您在全局使用该快捷方式,IDE将执行Project快速修复(Project quick fix)(显示意图操作和快速修复)。

23. Build and run : control + r (Windows / Linux: shift + F10)。

插件



  1. Key promoter ——帮助您更频繁地使用键盘的插件。

  2. String Manipulation ——一个为文本操作提供操作的插件(例如,切换样式,如camelCase、连字符-小写等、大写文本等还有很多)。

  3. Android Material Design Icon Generator ——此插件可帮助您将Material Design图标设置为Android项目。安装后,您可以使用快捷方式:cmd + shift + m以生成图标(默认)。

  4. ButterKnifeZelezny ——一个简单的插件,允许一键点击创建Butterknife视图注入。

  5. IntelliJ/Android Studio Plugin for Android Parcelable boilerplate code generation——一个基于类中的字段生成Android Parcelable实现的插件。

  6. ADB Idea ——一个帮助和自动执行adb命令的插件:卸载、杀死、启动、重新启动、清除应用程序和清除应用程序数据并重新启动它。

  7. Genymotion plugin ——此插件允许您从Android Studio创建和启动Genymotion虚拟设备。

  8. Android Methods Count ——一个解析您的Android库所依赖的插件,并显示方法计数作为方便的提示。

  9. Git Flow Integration ——一个用于引入 Git Flow分支模型 的插件。

  10. Builder plugin ——一个插件(从Square)生成一个类的静态嵌套Builder。


资源



  1. Philippe Breault:《 当代Android Studio秘诀 》

  2. 《 键盘快捷方式参考 》

  3. Reto Meier:《 在Android Studio中你可能不知道能做的十件事 》

  4. Hadi Hariri :《 无鼠标驱策开发 》

  5. Philippe Breault:《 像老板一样的Android Studio 》

  6. 《 Android Studio 专家 (Android 开发峰会 2015) 》

  7. Michael Evans:《 Android Studio 秘诀和技巧 》

  8. 《 遇见Android Studio 》

  9. Donn Felker :《 Android Studio——秘诀和技巧 》

  10. 《 用Android Studio调试你的App 》

  11. 你应该必备的插件——Reddit discussion 》


写在最后

哎。上边分享的插件和资源大多存在于国外网站,在国内打开或者下载特别慢,这时候你就需要一个靠谱的V——PN代理。

FOR Freedom 看看外边的世界,以及IT这一行,少不了去Google查资料,安利一个V——PN代理。一枝红杏 VPN,去Google查资料是绝对首选,连接速度快,使用也方便。我买的是99¥一年的,通过这个链接(http://my.yizhihongxing.com/aff.php?aff=2509)注册后输上会员中心得优惠码,平摊下来,每月才7块钱,特实惠。

本文标签 Android Android开发工程师 Android开发技巧 Android开发资源分享 Android开发技巧秘诀

转自 SUN‘S BLOG - 专注互联网知识,分享互联网精神!

原文地址 : Android开发工程师应该知道的50个开发秘诀、技巧和资源分享

相关阅读:Aaron Swartz – 互联网天才开挂的人生历程:每时每刻都问自己,现在这世界有什么最重要的事是我能参与去做的?
相关阅读:网站环境apache + php + mysql 的XAMPP,如何实现一个服务器上配置多个网站?

相关阅读:什么是工程师文化?各位工程师是为什么活的?作为一个IT或互联网公司为什么要工程师文化?

相关阅读: 程序员有用:2017最新能上Google的hosts文件下载及总结网友遇到的各种hosts问题解决方法及配置详解

相关阅读: 春节将至,又到了评绩效拿年终奖的时候!程序员绩效KPI 这个弥久历史谜题该怎么算呢?

相关BLOG:SUN’S BLOG - 专注互联网知识,分享互联网精神!去看看:www.whosmall.com




推荐阅读
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • 本文详细介绍了在 Oracle 数据库中使用 MyBatis 实现增删改查操作的方法。针对查询操作,文章解释了如何通过创建字段映射来处理数据库字段风格与 Java 对象之间的差异,确保查询结果能够正确映射到持久层对象。此外,还探讨了插入、更新和删除操作的具体实现及其最佳实践,帮助开发者高效地管理和操作 Oracle 数据库中的数据。 ... [详细]
  • 如何优化MySQL数据库性能以提升查询效率和系统稳定性 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 本文深入探讨了WinRing0及其源代码实现,详细解析了如何通过获取Ring0权限在应用程序中直接执行需要Ring0权限的CPU指令。此外,文章还提供了实例截图和核心代码示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • 本指南从零开始介绍Scala编程语言的基础知识,重点讲解了Scala解释器REPL(读取-求值-打印-循环)的使用方法。REPL是Scala开发中的重要工具,能够帮助初学者快速理解和实践Scala的基本语法和特性。通过详细的示例和练习,读者将能够熟练掌握Scala的基础概念和编程技巧。 ... [详细]
  • HBase Java API 进阶:过滤器详解与应用实例
    本文详细探讨了HBase 1.2.6版本中Java API的高级应用,重点介绍了过滤器的使用方法和实际案例。首先,文章对几种常见的HBase过滤器进行了概述,包括列前缀过滤器(ColumnPrefixFilter)和时间戳过滤器(TimestampsFilter)。此外,还详细讲解了分页过滤器(PageFilter)的实现原理及其在大数据查询中的应用场景。通过具体的代码示例,读者可以更好地理解和掌握这些过滤器的使用技巧,从而提高数据处理的效率和灵活性。 ... [详细]
  • 本文深入解析了Python在处理HTML过滤时的实现方法及其应用场景。通过具体实例,详细介绍了如何利用Python代码去除HTML字符串中的标签和其他无关信息,确保内容的纯净与安全。此外,文章还探讨了该技术在网页抓取、数据清洗等领域的实际应用,为开发者提供了宝贵的参考。 ... [详细]
  • 在ElasticStack日志监控系统中,Logstash编码插件自5.0版本起进行了重大改进。插件被独立拆分为gem包,每个插件可以单独进行更新和维护,无需依赖Logstash的整体升级。这不仅提高了系统的灵活性和可维护性,还简化了插件的管理和部署过程。本文将详细介绍这些编码插件的功能、配置方法,并通过实际生产环境中的应用案例,展示其在日志处理和监控中的高效性和可靠性。 ... [详细]
  • ### 优化后的摘要本学习指南旨在帮助读者全面掌握 Bootstrap 前端框架的核心知识点与实战技巧。内容涵盖基础入门、核心功能和高级应用。第一章通过一个简单的“Hello World”示例,介绍 Bootstrap 的基本用法和快速上手方法。第二章深入探讨 Bootstrap 与 JSP 集成的细节,揭示两者结合的优势和应用场景。第三章则进一步讲解 Bootstrap 的高级特性,如响应式设计和组件定制,为开发者提供全方位的技术支持。 ... [详细]
  • 深入解析CAS机制:全面替代传统锁的底层原理与应用
    本文深入探讨了CAS(Compare-and-Swap)机制,分析了其作为传统锁的替代方案在并发控制中的优势与原理。CAS通过原子操作确保数据的一致性,避免了传统锁带来的性能瓶颈和死锁问题。文章详细解析了CAS的工作机制,并结合实际应用场景,展示了其在高并发环境下的高效性和可靠性。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • 本文探讨了如何利用Java 8 Stream API 对数组进行高效排序和筛选处理。具体而言,通过 `stream()` 方法将 `listResult` 转换为流,然后使用 `sorted(Comparator.comparing())` 方法按伴随度进行降序排序,并最终收集结果。此外,还介绍了如何结合过滤条件进一步优化数据处理流程,提升代码的可读性和执行效率。 ... [详细]
author-avatar
mobiledu2502875267
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有