沉浸式中显示 PopupWindow
admin | andriod | 2017-08-08
在全屏沉浸模式时(Immersive Full-Screen Mode),如果弹出 Dialog 或 PopupWindow,则会自动退出沉浸模式。
退出沉浸式的原因是因为 Activity 的 Window 焦点被抢走了,Window 中的 DecorView 状态改变导致了退出。
如果要继续保持沉浸模式。对于 Dialog 情况,这里有解决办法 。 Dialog 在初始化时会生成新的 Window,先禁止 Dialog Window 获取焦点... [阅读全文]
一个强悍的android版本检测更新库
admin | andriod | 2017-07-27
CheckVersionLib
现在热更新技术挺火的,大公司都出了自己的热更新框架,但是各家热更新都有各自优缺点,终究不能解决所有bug,万不得已还是得进行版本升级,这是一个android上的自动版本检测并更新库。库集成了检测版本、下载版本以及自动安装升级
特点
任何地方都可以检测
任何地方都可以弹出升级对话框
自定义性强,手动回调解析,适用于各种版本... [阅读全文]
错误:INSTALL_FAILED_VERSION_DOWNGRADE
admin | andriod | 2017-07-18
安卓新版本的 ADT 在安装apk的时候,会检查当前要运行的版本 AndroidManifest.xml 中的 versionCode 和手机中已经安装过的该程序的 versionCode 做对比,如果手机中的 versionCode 比较高,ADT 就会提示出错:INSTALL_FAILED_VERSION_DOWNGRADE
所以,解决这个问题就是修改 AndroidManifest.xml 中的 versionCode 修改大一些就可以了。
要么就是把手机... [阅读全文]
Android Hugo
admin | andriod | 2017-07-10
https://github.com/JakeWharton/hugo
JakeWharton 大神的日志框架,用于 debug build 时显示方法的参数、返回值、运行时间。
用法
将 @DebugLog 注解添加到方法前即可。
Java
@DebugLog
public String getName(String first, String last) {
SystemClock.sleep(15); // Don't ever really do this!
return first + " "... [阅读全文]
5分钟教你打造一个秒开的Android App
admin | andriod | 2017-07-10
背景:
近日在开发过程中,发现每次点击app从桌面启动都有一个在桌面明显的等待时间,机型越低端的越明显,冷启动优化看来已经势在必行,所以怒而一顿研究再解决之。话不多说先上优化前后效果图:
买家秀:
淘宝秀:
Android App启动流程:
俗话说要想优化好,流程不可少!关于android app启动的流程图如下:
总结一下一个完成的冷启动app过程应该是... [阅读全文]
android 自定义 actionBar
admin | andriod | 2017-06-15
1.新建 compose_action_bar_layout.xml
XHTML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/compos... [阅读全文]
设置actionBar 背景和字体颜色
admin | andriod | 2017-06-15
XHTML
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="miui.ActionBar" parent="@miui:style/Widget.ActionBar">
<item name="android:background">@color/miui_theme_color</item>
<item name="android:titleTextStyle">@style/miui.ActionB... [阅读全文]
Android N分屏模式Activity生命周期的变化
admin | andriod | 2017-05-23
昨天Google发布了Android N Preview, balabala….
我是用模拟器去验证的, 通过长按多任务窗口(口)进入分屏模式, 这里只进行了简单的测试, 不排除通过配置哪个参数, 生命周期有了其它变化,
长按(口), Activity首先调用onMultiWindowChanged->onPause->onStop->onDestroy->onCreate->onStart- >onResume->onPause(焦点切入到... [阅读全文]
Android下各个按键对应的key code
admin | andriod | 2017-04-19
KEYCODE_UNKNOWN=0;
KEYCODE_DPAD_CENTER=23;
KEYCODE_R=46;
KEYCODE_MINUS=69;
KEYCODE_SOFT_LEFT=1;
KEYCODE_VOLUME_UP=24;
KEYCODE_S=47;
KEYCODE_EQUALS=70;
KEYCODE_SOFT_RIGHT=2;
KEYCODE_VOLUME_DOWN=25;
KEYCODE_T=48;
KEYCODE_LEFT_BRACKET=71;
KEYCODE_HOME=3;
KEYCODE_POWER=26;
KEYCODE_U=49;
KEYCO... [阅读全文]
Error:Cannot locate factory for objects of type DefaultGradleConnector, as ConnectorServiceRegistry
admin | andriod | 2017-03-29
AS报错处理
早上起来报这个错误,顿时间懵逼,我又没改文件怎么报这个错误,后来找到了解决办法
C++
Gradle 'MyApp' refresh failed.
Error:Cannot locate factory for objects of type DefaultGradleConnector, as ConnectorServiceRegistry has been closed.
123
Gradle 'MyApp' refres... [阅读全文]