Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.
Get Feeder2bab.me
Get the latest updates from 2BAB's Engineering Blog directly as they happen.
Last updated over 3 years ago
almost 12 years ago
原文链接 , 翻译 by 2BAB。 API Level: 21 Android 5.0 ( LOLLIPOP...
almost 12 years ago
原文链接 , 翻译 by 2BAB。 [本文作者 Dianne Hackborn, 一位足迹遍布所有安卓应用框架的工程师 - Tim Bray]...
almost 12 years ago
开发的各个流程会用到的 Material Design 资源整合。 For PM Lollipop Widget Library for Axure RP...
almost 12 years ago
第一种情况: 界面上有三个view,上面是一个要隐藏的View A,中间是一个不隐藏的View B,下面有一个ListView C。当C向上滑动的时候,如果A还没有被隐藏,就随着滑动而隐藏,当A完全隐藏之后,B就一直在最上面,C还可以继续向上滑动;当C向下滑动的到底后A逐渐显示出来。 突发奇想的省力方法: 给 ListView C 添加一个HeadView(包含A、B),然后另外准备一个外部的B在屏幕顶部,一开始不可见。ListView当前滚动高度超过A的高度时,显示外部的B;滚动高度小于A时隐藏内部的B。 效果: 代码:...
over 11 years ago
前两天某朋友发现手机有个app无法卸载,后知其因设备管理器激活导致,遂去尝试取消,但却在取消那刻卡机。反复折腾之后,只能重刷。后来他发了一篇关于设备管理器bug的文章给我,便有了如下一番折腾。 ##尝鲜 文章《Android 学习 设备管理器勾选后不能再取消了》(作者:带个回家)大致意思是: 继承 DeviceAdminReceiver 重写 onDisableRequested(Context context, Intent intent)...
over 11 years ago
放假在家用回了 Nexus 4,在 Lollipop 作为日常系统使用一段时间后,发现了一个有意思的东西。如下图,正常情况下使用 Chrome 浏览网站时,多任务的预览界面上,Chrome 的 App bar 是灰色一片。而其背后的知乎、Gmail因为设定了 colorPrimary...
about 10 years ago
Demo: https://github.com/2BAB/Android-Plugin-Dev-Notes 有几个ClassLoader 如MainActivity的代码所示, protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ClassLoader...
about 10 years ago
Demo: https://github.com/2BAB/Android-Plugin-Dev-Notes 如何获取能够被加载的 .dex 文件 准备如下两个测试类,其中TestDexInterface还需要拷贝一份到工程中 [TestDexClass.java] package example.com.classeasyload; public class TestDexClass...
almost 10 years ago
Demo: https://github.com/2BAB/Android-Plugin-Dev-Notes 其实从这一节开始,就需要区分两种插件化的方案: 需要提前在 Manifest 里注册 Activity 、Service 的 不需要的 网路上大多是研究不需要注册的方案,需要 hook...
almost 10 years ago
Demo: https://github.com/2BAB/Android-Plugin-Dev-Notes 插件化的资源加载大体上也分两种: 每个插件构造单一的 Resource 对象,各个插件的资源互不影响 所有插件的资源都加载到一个 AssetManager,全局可用,但是会出现资源 ID 冲突的现象,必须在打包流程中做修改 本节以构造单一对象为基础讲解,资源冲突的问题和方案下节讲。 资源的寻找过程...
almost 10 years ago
Demo: https://github.com/2BAB/Android-Plugin-Dev-Notes 上节学习到「各插件构造各自的 Resource 对象,各个插件的资源互不影响」,本节使用另外一种方案——「所有插件的资源都加载到一个 AssetManager,全局可用」。 单一 Resource(AssetManager)的方案,主要问题在于资源 ID 冲突,解决的方案大体上分三种: 修改 AAPT...