android 兼容所有刘海屏的方案大全

推荐: – ios兼容iphonex刘海屏解决方案 – android 兼容所有刘海屏的方案大全 – android 兼容huawei手机刘海屏解决方案 – android 兼容vivo手机刘海屏解决方案 – android兼容oppo手机刘海屏解决方案 – android兼容小米xiaomi刘海屏解决方案 – android 关于google刘海屏的解决方案 目录: 谷歌google官方提供的解决方案 小米xiaomi官方提供的解决方案 华为huawei官方提供的解决方案 vivo官方提供的解决方案 oppo官方提供的解决方案 其它手机厂商 谷歌google官方提供的解决方案 ......

经典语句

2018-07-11

电影《我的前半生》: 因为人生不易,所以需要找个人来同舟共济

无名:我不是“帮谁做家务”,因为我就是这个家庭的一部分!其实我老婆也并不需要人帮忙,她需要的是一个共同经营家庭的伙伴

Android 拦截返回键事件的实例详解

KeyEvent类 Android.View.KeyEvent类中定义了一系列的常量和方法,用来描述Android中的按键事件。 和返回键有关的常量和方法有。 KeyEvent.KEYCODE_BACK: 表示key类型为返回键 KeyEvent.ACTION_DOWN:表示事件为按下key,如果一直按住不放,则会不停产生此事件。 KeyEvent.ACTION_UP:表示事件为为放开key,一次点击key过程只会调用一次。 public final int getKeyCode():获取此事件对应的key类型。 public final int getAction():获取此事件对应的事件类型 Activity中拦截返回键 在Activity的派生类中可以通过重写onKeyDown和o ......

Android自动化测试-Monkey命令详解

四大类—— 常用选项、事件选项、约束选项、调试选项 1、常用选项 –help:打印帮助信息 -v:指定打印信息的详细级别,一个-v增加一个级别 ,默认级别为 0 。用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别。 日志级别 Level 0 缺省值,仅提供启动提示、测试完成和最终结果等少量信息 日志级别 Level 1 提供较为详细的日志,包括每个发送到Activity的事件信息 日志级别 Level 2 最详细的日志,包括了测试中选中/未选中的Activity信息 2、事件选项 -s:指定产生随机事件种子值,相同的种子值产生相同的事件 ......

常用app

apkpure 这个是用来下载第三方应用的,无需Google play 即可下载 play 商店里的各种应用 当前Activity 该款软件可显示最前台页面所在应用的包名及Activity 还有一个脚本来获取: #!/bin/sh oldActvity="" displayName="" currentActivity=`adb shell dumpsys window windows | grep -E 'mCurrentFocus'` while true do if [[ $oldActvity != $currentActivity && $currentActivity != *"=null"* ]]; then displayName=${currentActivity##* } displayName=${displayName%%\}*} ......

Android插件化-携程

近期学习Android插件化管理,需要从大侠搬砖。整理一下文章: 携程: http://www.infoq.com/cn/articles/ctrip-android-dynamic-loading 本文为携程无线基础团队投稿,介绍它们已经开源的Android动态加载解决方案DynamicAPK,本文作者之一,携程无线研发总监陈浩然将会在ArchSummit北京2015架构师大会上分享架构优化相关内容,欢迎关注。 携程Android App的插件化和动态加载框架已上线半年,经历了初期的探索和持续的打磨优化,新框架和工程配置经受住了生产实践的考验。本文将详细介绍Android平台插件式开发和动态加载技术的原理 ......

Android-aapt/dx命令编译打包APK

命令工具 AndroidSDK/build-tools/apixx/aapt.exe AndroidSDK/build-tools/apixx/aapt/dx.bat JDK/bin/javac.exe 注: 以下命令中[]都表示可选 一.aapt命令 功能: 1.编译res目录xml文件 2.编译AndroidManifest.xml 3.生成R.java 4.生成Resources.arsc 1.查看APK包文件列表 aapt l[ist] [-v] [-a] file.{zip,jar,apk} List contents of Zip-compatible archive 这个命令没什么用, .APK和.zip文件没什么区别,可以直接使用压缩解压工具打开,增删改查文件都非常方便 2.查看编译后的xml ......

Android aapt 命令 详细解析

Android aapt 命令 详细解析 2015年10月23日 20:11:55 阅读数:7455 aapt即 Android Asset Packaging Tool。该工具在SDK/tools目录下,如果你没有设置环境变量,那需要进入该目录下才能运行aapt命令,如果设置了环境变量则可以在任何目录下运行aapt命令了。 1、列出压缩文件目录 aapt l[ist] [-v] [-a] file.{zip,jar,apk} 参数: -v:会以table的形式输出目录,table的表目有:Length、Method、Size、Ratio、Date、Time、CRC-32、Name。其中Method表示压缩形式,有Deflate和Stored两种,即该Zip目录采用的算法是压缩模式 ......

java 23种设计模式 深入理解

以下是学习过程中查询的资料,别人总结的资料,比较容易理解(站在各位巨人的肩膀上,望博主勿究) 创建型 抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html 工厂方法 http://www.cnblogs.com/java-my-life/archive/2012/03/25/2416227.html 建造者模式  http://www.cnblogs.com/java-my-life/archive/2012/04/07/2433939.html 原型模式 http://www.cnblogs.com/java-my-life/archive/2012/04/11/2439387.html 单态模式 http://www.cnblogs.com/java-my-life/archive/2012/03/31/2425631.html 结构型 ......

abd-logcat, main、system、radio、events

在Android中不同的log写到不同的设备中,共有/dev/log/system, /dev/log/main, /dev/log/radion, /dev/log/events四中类型。其中默认Log.v等写入/dev/log/main中。Slog写入/dev/log/system中。 我们在使用logcat 抓去日至的时候, 可以指定buffer,来请求不同的环形缓冲区 (‘main’, ‘system’, ‘radio’, ‘events’,默认为”-b main -b system”),因为Android日志系统为日志消息保持了多个循环缓冲区,而且不是所有的消息都被发送到默认缓冲区,要想查看这些附加的缓冲区 ......

Ant编译

ANT编译流程分析 https://blog.csdn.net/kevin_nazgul/article/details/48767101 自己动手生成Android Apk https://blog.csdn.net/chenkai19920410/article/details/60589100 Android 热修复三部曲之基本的Ant打包脚本 https://blog.csdn.net/lisdye2/article/details/52049857 android ant多渠道混淆打包 https://blog.csdn.net/junfeng120125/article/details/9234651 android Ant 批量多渠道打包 总结! https://blog.csdn.net/tenggangren/article/details/8051937 ant打多渠道包混淆签名   https://blog.csdn.net/wangli ......

Android自定义View之带小圆圈的倒计时圆形进度条

文章来源:https://blog.csdn.net/xiaxiazaizai01/article/details/52415377 package com.example.customcountdownprogress; import android.animation.Animator; import android.animation.ValueAnimator; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; import android.os.CountDownTimer; import android.os.Handler; ......

Cocos2dx编译错误收集

make.exe: *** No rule to make target `jni/.cpp’, needed by `obj/local/armeabi/objs-debug/cocos2dcpp_shared/.o’. Stop. make.exe: *** Waiting for unfinished jobs…. 这个问题,是由于cpp文件中带有空格。 make: *** No rule to make target  常见版本:https://blog.csdn.net/roserose0002/article/details/38397537 乾坤大挪移,全部搬过来: 在用Tornado编译的时候,遇到编译器报如下错误:  make: *** No rule to make target `e:/Tornado2.2_Project/FTTB/utils/h/nos/nos_cli.h’, neede d ......

Android Ble蓝牙开发(客户端)

最近项目里面需要集成一个蓝牙的连接功能,作为一枚刚刚毕业不久的新生,大学几年又白过的。只好在几天内搜搜百度,脑补一下。文章部分内容摘至各大Blog,加上本dust的见解,写了一份Client端和Service端的小呆毛。 参考链接–Link:http://m.blog.csdn.net/article/details?id=50504406 先来叨叨下历史 蓝牙我们应该很早就听过,最常见的就是原来我们偶尔通过手机上的蓝牙来传输文件。貌似在低功耗蓝牙(Bluetooth Low Energy)出现之前,蓝牙我们使用的并不多,蓝牙的产品貌似也不是很多。2010年6月30号蓝牙技术联盟推出了低功耗 ......

android.mk中引用第三方库的方法

一、集成第三方jar包: 1.在项目目录下创建目录libs(不创建也行,一会儿指向对应路径就好),将第三方的jar包放进去。 2.在Android.mk文件中进行配置: include $(CLEAR_VARS) LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := smartphotolib:../../libs/smartphotolib.jar #前面为自定义的名(umeng_message_push),起什么名都可以,“:”后面的为jar包在项目下对应的路径。 include $(BUILD_MULTI_PREBUILT) 3.引用,在LOCAL_STATIC_JAVA_LIBRARIES中加入smartphotolib 即可 LOCAL_STATIC_JAVA_LIBRARIES := smartphotolib 或 ......

Android兼容(Nougat-7)-FileProvider

需要阅读官方文档请移步: https://developer.android.com/about/versions/nougat/android-7.0-changes.html 权限更改 Android 7.0 做了一些权限更改,这些更改可能会影响您的应用。 系统权限更改 为了提高私有文件的安全性,面向 Android 7.0 或更高版本的应用私有目录被限制访问 (0700)。此设置可防止私有文件的元数据泄漏,如它们的大小或存在性。此权限更改有多重副作用: 私有文件的文件权限不应再由所有者放宽,为使用 MODE_WORLD_READABLE 和/或 MODE_WORLD_WRITEABLE 而进行的此类尝试将触发 SecurityException。 ......

Android NDK之JNI陷阱

Android NDK(native develop kit)内容。这里只想记录下JNI(java native interface)经常遇到到问题。 问题1.  忘记delete local reference。带New到方法(如:NewByteArray)这样到方法比较好辨认,需要手动调用DeleteLocalRef()来释放(返回值除外)。比较特殊的一个方法是:GetByteArrayELement必须要调用ReleaseByteArrayElements进行释放。当然如果你只是取bytearray中到byte,那么完全可以用GetByteArrayRegion实现。 问题2. 没有NewGlobalRef。 在不同线程调用java方法,需要保存jobject对象,这时需要对jobject对象做全局引用, ......

Android Studio你必须学会的快捷键(Eclipse转AS必看)

前言:从Eclipse转到Android Studio之后,一开始把keymap设置成Eclipse,却发现有些常用的快捷键都失效了,大概是冲突了。想了下,觉得与其重新设置快捷键,不如去适应AS的快捷键,毕竟听说AS新增了好些有用的快捷键。于是把keymap又改回Default。事实也证明,熟悉起来还是挺快的,大概花了两天时间,就能很熟练了。以下是个人整理的Eclipse和AS的常用快捷键对照表,方便刚转AS的小伙伴们快速入手。 功能 Eclipse Android Studio 快速查找类、文件 Ctrl + Shift + T/R Ctrl + N 、Ctrl + Alt + N 查找、替换 Ctrl + F Ctr ......

JNI的某些数组和字符串类型转换

jbytearray转c++byte数组 C代码   jbyte * arrayBody = env->GetByteArrayElements(data,0); jsize theArrayLengthJ = env->GetArrayLength(data); BYTE * starter = (BYTE *)arrayBody; jbyteArray 转 c++中的BYTE[] C代码   //jbytearray strIn jbyte * olddata = (jbyte*)env->GetByteArrayElements(strIn, 0); jsize  oldsize = env->GetArrayLength(strIn); BYTE* bytearr = (BYTE*)olddata; int len = (int)oldsize; C++中的BYTE[]转jbyteArray C代码   //nOutSize是BYTE数组的长度 BYTE pData[ ......