• Android开发技术周报 Issue#20


    新闻

    1. Xposed Framework for Android Lollipop is Here!

      Xposed框架是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。

    教程

    1. 用 RecyclerView 实现『贝壳单词』英语角的 Quick Return 效果

      今天把『贝壳单词』中英语角的 quick return 效果剥离出来写了个 Demo,讲解使用 RecyclerView 和 nineoldandroids 自己动手写快速返回菜单。通过这篇文章你将了解到的知识有:1.RecyclerView 和其适配器的基本使用 RV、2.适配多种 Item View 类型写法、3.mRecyclerView.setOnScrollListener()、4.nineoldandroids 这个强大 View 操作库的使用等。

    2. 开源项目Philm的MVP架构分析

      最近一直在研究ChrisBannes的开源项目Philm,其整体架构是一套MVP的实现,因为自己也确实没有遇到过整个项目利用MVP搭建的架构,看到的更多是一些代码片段,这里就探讨Philm是如何结合Android实际问题来实现一种MVP架构,如有分析不准确的地方,欢迎指出,大家一起探讨。

    3. Gradle 修改 Maven 仓库地址

      近来迁移了一些项目到Android Studio,采用Gradle构建确实比原来的Ant方便许多。但是编译时下载依赖的网速又着实令人蛋疼不已。如果能切换到国内的Maven镜像仓库,如开源中国的Maven库,又或者是换成自建的Maven私服,那想必是极好的。

    4. 为什么我们可以在非UI线程中更新UI

      看到这样的标题...估计N多人会说我是逗比…因为很多盆友在学习Android(特别是从4.0之后开始入门的)的时候都会常看见或听到别人说我们更新UI呢要在UI线程(或者说主线程)中去更新UI,不要在子线程中更新UI,而Android官方呢也建议我们不要在非UI线程直接更新UI,为什么呢?

    5. Guava 是个风火轮之基础工具(1)

      Guava 是 Java 开发者的好朋友。虽然我在开发中使用 Guava 很长时间了,Guava API 的身影遍及我写的生产代码的每个角落,但是我用到的功能只是 Guava 的功能集中一个少的可怜的真子集,更别说我一直没有时间认真的去挖掘 Guava 的功能,没有时间去学习 Guava 的实现。

    6. Android最佳性能实践(二)—分析内存的使用情况

      由于Android是为移动设备开发的操作系统,我们在开发应用程序的时候应当始终把内存问题充分考虑在内。虽然Android系统拥有垃圾自动回收机制,但这并不意味着我们就可以完全忽略何时去分配或释放内存。即使我们全部按照上一篇文章中给出的编程建议来去编写程序,还是会很有可能出现内存泄露或其它类型的内存问题。所以,唯一能够解决问题的办法,就是尝试去分析应用程序的内存使用情况,那么本篇文章就会教大家如何进行分析。

    7. Android 主线程之旅—PSVM

      当碰到与Android主线程交互相关的Bug时,我决定好好去看看Android的主线程究竟是怎么一回事。这篇文章就是描述我的Android主线程之旅的第一部分。

    8. Java注解处理器

      Java中的注解(Annotation)是一个很神奇的东西,特别现在有很多Android库都是使用注解的方式来实现的。在这篇文章中,我将阐述怎样写一个注解处理器(Annotation Porcessor)。在这篇教程中,首先,我将向您解释什么是注解器,你可以利用这个强大的工具做什么以及不能做什么;然后,我将一步一步实现一个简单的注解器。

    9. 在 x86 上优化 Android 应用的方法和技巧

      英特尔致力于帮助开发人员提供能够在英特尔架构上正常运行(甚至出色运行)的 Android 应用。 虽然英特尔主要致力于社区层面:优化 Dalvik Java、V8 引擎和 Bionic C;丰富代码库;为 IA 提供采用 32 位和 64 位内核的版本,他们同样提供了多种类型的新工具为 Android 开发人员提供帮助。 这些工具主要用于提高性能,使其超过面向 x86 的默认 ARM 转换层:libhoudini 所提供的性能。

    代码&开源库

    1. KugouLayout

      一个模仿酷狗播放器滑动返回的layout,可以让你的app有更丰富便捷的手势操作,支持activity滑动返回和普通layout的滑动显示/隐藏两种模式。

      image

    2. labelview

      贴纸效果。

      ![image](https://raw.githubusercontent.com/linger1216/labelview/master/img/img2.png)
    3. AndroidTagGroup

      一个漂亮的标签组控件。

      image

    4. drozer

      一个Android安全测试框架。

    5. Lynx

      一个可以创建一个自定义View并显示所有日志信息的库。

      image

    6. Android-Ultra-Photo-Selector

      一个图片选择器控件,支持选择多张图片、浏览设备上所有包含图片的文件夹、预览选择的图片并且支持缩放。

      image

    7. fab

      一个支持很多自定义属性的Floating Action Button控件。

      image

    8. EasyMVP

      Linkedin工程师做的一个mvp示例demo.

      image

    9. IconButton

      一个Button的子类,支持更好控制over drawable位置的功能。

    10. MaterialLoadingProgressBar

      抽取的support-v4 v21 中的loading圈效果。

      image

    11. ElasticScrollView

      带回弹效果的ScrollView。

      image

    12. android-resources

      Android 开发资料收集汇总。

    13. dashed-circular-progress

      圆形轨迹进度条控件。

      image

    14. AutoCompleteBubbleText

      image

    15. DrawableView

      支持手写绘画的自定View,并且可以将绘画的结果保存为图片。

      image

    16. anytextview

      对TextView、EditText和Button进行了扩展,可以支持非系统字体。

    工具

    1. Android Studio 1.1 RC1

      修复了一些Bug。

    2. JitPack.io

        JitPack根据需要构建GitHub项目并提供现成的软件包,方便你在Gradle,Maven和Sbt项目中使用包库。

    3. GerritHub

      Github仓库代码Review工具。

    视频

    1. Android面试常客Handler详解

      本课程将深入理解Android的Handler机制,并结合源码实例,讲解Looper、MessageqQueue、Handler之间的关系,同时介绍HandlerThread的原理和使用,并分析Handler在开发中遇到的异常的原因,最后从源码的角度分析一下Handler更新UI的流程。

    2. Android自定义任意层级树形控件

      本课程将带领大家通过ListView打造一个任意层级的树形控件,大家可以学到巧妙的设计思想以及数据结构的知识。课程中也包含如何巧妙的利用反射加注解将设计通用化,同时可以进一步加深对ListView适配器的理解.

    设计

    1. Twitter视频功能设计流程全程剖析

      在这7000字文章中,Twitter设计师展示了严谨的设计流程 以及 设计开发协作心得。Twitter设计流程值得学习的几点:1.原型设计驱动设计方向,可交互、便于测试、确定开发可行性。2.注重设计与开发的沟通,将很多设计师来做更好的开发工作转移给设计师,项目跟进扎实,与其在AE中死抠“设计”细节,不如简单制作大致原型,尽早协助开发调节效果,制作“产品”3.精雕细琢,750+静态设计变种,54份原型可见细心程度。4.问题汇总,bug发现,用户测试并非与设计师无关。5.任何棘手的实现问题,多揪着开发问,很多小发现影响却很大。

    2. 四个不为人知的PHOTOSHOP高效操作秘籍(二)

      首先花一小段文字来重申下 mac 和 win 的快捷键问题。两个操作系统下的 PS 是一样的,只不过 mac 下的快捷键 Command 在 win 下换成了 Ctrl,Option 换成了 Alt ,其他是没有区别的。本文所提的技巧对两个平台都是通用的!

  • 相关阅读:
    从缓冲上看阻塞与非阻塞socket在发送接收上的区别
    关于TCP封包、粘包、半包
    CURL 和LIBCURL C++代码 上传本地文件,好不容易碰到了这种折腾我几天的代码
    Spring boot 搭配 JPA 生成表注释 和 字段注释
    Spring Data JPA 中常用注解
    SpringBoot Data JPA 关联表查询的方法
    Spring boot data JPA数据库映射关系 : @OneToOne,@OneToMany,@ManyToMany
    Spring Boot Jpa 表名小写转大写
    SpringBoot入门系列~Spring-Data-JPA自动建表
    使用Spring-Session共享使用Session
  • 原文地址:https://www.cnblogs.com/stewartlj/p/5684898.html
Copyright © 2020-2023  润新知