分类: [Android]

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

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

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-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目录采用的算法是压缩模式 ......

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; ......

Android Ble蓝牙开发(客户端)

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

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 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 ......

Java层与Jni层的字节数组传递【适用于其他基本类型数组】

Android开发中,经常会在Java代码与Jni层之间传递数组(byte[]),一个典型的应用是Java层把需要发送给客户端的数据流传递到Jni层,由Jni层的Socket代码发送出去,当然,Jni层也需要把从Socket接收到的数据流返回给Java层。我简单地总结了一下,从Java层到Jni层,从Jni层到JAVA层,各有3种传递方式,下面用代码示例简单地介绍一下。 示例代码的主要文件有两个,一个是Native.java,是Java层的类;另一个是Native.c,是JNI层的文件,关键的地方我都用注释添加到代码中了,完整的代码见博文后面的附件。 一、 从Java传递数组到Jni层 ......

Android获取Mac地址,兼容6.0以下,6.0-7.0、7.0以上三种情况

package com.uiuno.tools.common; import java.io.BufferedReader; import java.io.FileReader; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.io.Reader; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; import android.content.Context; import android.content.pm.PackageManager; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.os.Build; ......

Android 开发之接入Google支付

众所周知,Google Play是Google Android官方的应用商店,也是将应用发布到世界各地一个重要的渠道。支付作为盈利的一个重要手段,可以借助Google in-app Billing api来达到目的。 Google Play in-app Billing的接入过程需要阅读接入文档。官方的接入文档地址为: https://developer.android.com/google/play/billing/api.html (1)Google Play开发者控制台 Google Play开发者控制台是管理应用,配置商品和发布的后台。参考地址为: https://developer.android.com/distribute/googleplay/developer-console.html Google Play的帮助 ......

给 Android 开发者的 RxJava 详解

需阅读原文请点击:http://gank.io/post/560e15be2dca930e00da1083 前言 我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJava 到底是什么? 鉴于 RxJava 目前这种既火爆又神秘的现状,而我又在一年的使用过程中对 RxJava 有了一些理解,我 ......

Android 在 Eclipse 项目中使用 Leakcanary 内存泄露检测

一、前言 Leakcanary 是 Square 公司推出的一款开源项目,如果说没听说过 Leakcanary 的话,那 Square 的其他产品应该有听说过吧,曾推出过 okhttp,retrofit,picasso 等开源项目。Leakcanary 呢,是用于检测项目的内存泄露的,使用起来也很简单,但是这个项目是用于 Android Studio 的,至于 在 Android Studio 里怎么使用这里就不说了,打开上面的 Leakcanary 那个 Github 链接里面有说,由于一些人习惯用 Eclipse,或者一些之前在 Eclipse 中开发的老项目还没转成 Android Studio 的那怎么用这个 Leakcanary来检测内存泄露 ......

JNI与C++的数据类型转换

std::string转jstring jstring ToJString(JNIEnv* env, const std::string& value) { return env->NewStringUTF(value.c_str()); } jstring转std::string std::string ToCppString(JNIEnv* env, jstring value) { jboolean isCopy; const char* c_value = env->GetStringUTFChars(value, &isCopy); std::string result(c_value); if (isCopy == JNI_TRUE) env->ReleaseStringUTFChars(value, c_value); return result; } bool转jboolean jboolean ToJBool(bool value) { return valu ......