P平台之后fastboot加密后adb无法push问题解决方案----需要解锁bootloader

在android P版本上如果按照“FAQ18076 android 6.0 M userdebug版本执行adb remount失败”的做法在userdebug版本上执行adb remount会提示以下错误:remount of the / superblock failed: Permission deniedremount failed原因是android P版本后google启用avb(Android Verified Boot)2.0,verified boot and DM-verity默
分类: 其他 发布时间: 08-03 23:18 阅读次数: 0

MTK Android Q修改关机充电动画

1.关机充电动画的图片修改 vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/fwvgaplus/ 下的图片具体对应的文件夹可以查看 ProjectConfig.mk 中配置的宏 BOOT_LOGO = fwvgaplus修改完图片之后只需要 make lk 就可以生效,大大节省了编译时间source build/envsetup.shlunch xxxmake -j16 clean-lkmake -j16 lk然后用_安卓10充电动画修改
分类: 其他 发布时间: 08-03 23:18 阅读次数: 0

不需要Context的显示Dialog

弹出一个AlertDialog,不一定需要Activity级别的Context,而且任何地方都有办法弹出一个AlertDialog,只要是在Application的attachBaseContext之后。import android.app.AlertDialog;import android.content.Context;import android.content.DialogInterface;import android.os.Build;import android.os.Handle_不需要context 的弹窗
分类: 其他 发布时间: 08-03 23:17 阅读次数: 0

instanceOf 的另外一种写法

if (Activity.class.isInstance(mContext)) {}等同于if (mContext instanceof Activity) {}
分类: 其他 发布时间: 08-03 23:17 阅读次数: 0

Android Provision源码分析

Provision主要作用是作为开机引导用户进行一些基本设置。但是在原生的 android 系统中,这个 provision 非常的简单,只有一个空白的 activity,这个主要就是留给 厂商自己定制的,在Android中,寻找Launcher的时候是根据HOME的filter(在Manifest中定义的<category android:name=android.intent.category.HOME />)来过滤,而Provision的DefaultActivity中不仅配置了cat_com.android.provision 源码位置
分类: 其他 发布时间: 08-03 23:17 阅读次数: 0

Android View performClick() 和 callOnClick() 的区别

public boolean callOnClick() { ListenerInfo li = mListenerInfo; if (li != null && li.mOnClickListener != null) { li.mOnClickListener.onClick(this); return true; } return false;}public boolean performClick() {
分类: 其他 发布时间: 08-03 23:17 阅读次数: 0

Android屏蔽所有物理按键

frameworks\\base\\services\\core\\java\\com\\android\\server\\wm\\WindowManagerService.javacomputeScreenConfigurationLocked 方法将 hardKeyboardAvailable 改为false。boolean hardKeyboardAvailable = false;_android 怎么拦截自定义物理按键】
分类: 其他 发布时间: 08-03 23:16 阅读次数: 0

Android通过代码批量生成字符图标用于给输入法显示状态栏的图标

关键Java代码import android.app.Activity;import android.graphics.Bitmap;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.TextView;import java.io.File;import java.io.FileOutputStream;import java.io.IOExcept
分类: 其他 发布时间: 08-03 23:16 阅读次数: 0

Android SearchView 返回键无效解决方案

Android中SearchView控件在设置iconifiedByDefault=false时会出现一个问题:打开页面控件获取到焦点后,按返回键无法返回。解决方案mSearchView.setFocusableInTouchMode(true);
分类: 其他 发布时间: 08-03 23:16 阅读次数: 0

Android当焦点在SearchView中时,输入法不能处理KEYCODE_BACK按键的原因

公司自主研发的终端产品形态是带有物理按键的T9数字键盘的,终端需要可以通过键盘来输入字符(中文、英文、数字等),当然同时也是可以删除的。软件中的某个模块,使用了SearchView这个控件,当输入字符之后,用户可以通过back按键删除字符,但是在实现的过程中发现输入法不能获取KEYCODE_BACK按键。翻了下SearchView的源码,发现SearchView$SearchAutoComplete重写了onKeyPreIme并处理了KEYCODE_BACK按键,导致输入法不能正常获取。代码如下:p
分类: 其他 发布时间: 08-03 23:15 阅读次数: 0

Android密码强度监测工具类

import java.util.regex.Matcher;import java.util.regex.Pattern; public class CheckPWD { public static Safelevel checkPasswordStrength(String c) { Safelevel d = Safelevel.WEAK; if (isEmptyPassword(c)) { return d; } if (isTooShort(c)) { d
分类: 其他 发布时间: 08-03 23:15 阅读次数: 0

MTK Android 拍照人脸美化会生成两张照片

vendor/mediatek/proprietary/packages/apps/Camera/src/com/mediatek/camera/mode/facebeauty/FaceBeautyMode.javaif (!mIFeatureConfig.isVfbEnable()) { mIFileSaver.init(FILE_TYPE.JPEG, 0, null, -1); long time = System.currentTi
分类: 其他 发布时间: 08-03 23:15 阅读次数: 0

Android 通过代码区分高通/MTK/展锐平台

public static boolean isHardWareVendorQualcomm() { String hardware = android.os.Build.HARDWARE; if (hardware.matches(qcom)) { Log.d(TAG, Qualcomm platform); return true; } return false;}public static boolean isHardWar
分类: 其他 发布时间: 08-03 23:14 阅读次数: 0

Android 输入法显示图标

InputMethodService.java 类中有一个方法 showStatusIcon(R.drawable.ic_number);
分类: 其他 发布时间: 08-03 23:14 阅读次数: 0

Ubuntu MTK FlashTool命令行工具使用方法

flash_tool_path=/path/to/SP_Flash_Tool_v5.1944_Linux;$flash_tool_path/flash_tool -d $flash_tool_path/MTK_AllInOne_DA.bin -s /path/to/MT6580_Android_scatter.txt -c format-download -t auto -b;-d 指定 DownloadAgent 的路径-s 指定 Android_scatter.txt 的路径-c 指定下载方式
分类: 其他 发布时间: 08-03 23:14 阅读次数: 0

Android Q默认不使用ccache编译,以及修改方法

在 build/core/ccache.mk中有一段注释# We no longer provide a ccache prebuilt.## Ours was old, and had a number of issues that triggered non-reproducible# results and other failures. Newer ccache versions may fix some of those# issues, but at the large scale o
分类: 其他 发布时间: 08-03 23:14 阅读次数: 0

Android平台使用ninja全编/模块编译提高效率

全编prebuilts/build-tools/linux-x86/bin/ninja -f out/combined-full_k80hd_bsp_fwv_512m.ninja 2>&1 | tee ninja_build.logps : 在后面加上 2>&1 | tee ninja_build.log 可以在终端上记录编译的中间过程和编译生成的一些文件模块编译prebuilts/build-tools/linux-x86/bin/ninja -f out/comb
分类: 其他 发布时间: 08-03 23:13 阅读次数: 0

Linux学习环境搭建

在学习Linux之前,我们首先简单了解一下什么是Linux。Linux其实有两种含义,一是我们通常说的广义上的操作系统,另外一种是由芬兰天才程序员托瓦兹编写的开源操作系统的内核。接下来我们的课程里面,涉及到的Linux是指广义上的操作系统。一、学习Linux之前的环境准备1、云主机:现在公有云主机非常普及,比如阿里云、腾讯云等。但是需要付费购买,学习成本有点高,在学习阶段不推荐。2、虚拟机:在我们自己常用Windows或MAC电脑上面安装虚拟机,0成本,管理也方便,推荐大家使用。接下..._linux学习要搭建环境
分类: 其他 发布时间: 08-03 23:13 阅读次数: 0

第一次在虚拟机启动我们的Linux系统

在上一篇中,我们学习了如何在本地环境搭建自己的Linux学习环境,从今天开始,正式进入我们的Linux学习之旅。今天我们尝试第一次启动Linux系统,为保证虚拟机的流畅运行,建议将分辨率设置为 800x600。1、第一次启动Linux之后,进入初始化设置,我们同意许可,然后点击“结束配置”即可。2、进入下一个界面之后,会显示你第一次启动登录的用户以及未列出的用户,默认显示的是安装Linux时候创建的用户。3、如果要使用管理员的root用户登录,点击“未列出”之后,输入用户名 root,密码为安装系_虚拟机首次启动时间命令
分类: 其他 发布时间: 08-03 23:13 阅读次数: 0

Linux常用命令之ls、cd、pwd、mkdir命令讲解

ls命令令是Linux最常用的命令之一,也是一条非常古老的命令。在开始学习Linux命令之前,还是想给大家一条建议:很多同学可能刚开始学习Linux,然后就去买一些教材去学习,教材上面有可能收集了Linux的上千条甚至几千条命令及配置选项,然后对着书上的所有命令一个个敲一遍,这样没有任何意义的。其实我们只需要学会记住常用的几十个命令和选项就可以了。1、文件命名规则大小写极度敏感不能用/符号,其他符号都属于合法符合。因为 / 在Linux里面表示“根”特殊符号能不用就尽量不用,比如:@#¥&a
分类: 其他 发布时间: 08-03 23:13 阅读次数: 0