10 傻熙Ta爸

尚未进行身份认证

我要认证

Android小新人

等级
TA的排名 18w+

Android模块编译push framework/service 等需要重启的模块之后,只要 kill system_server 就可以生效

目前 framework/base/services 验证有效

2020-08-03 14:51:29

Android跳过开机向导的脚本

adb root;adb shell pm disable com.google.android.setupwizard;adb shell pm disable aaa.bbb.ccc; //其他的一些开机向导应用的包名adb shell settings put global device_provisioned 1;adb shell settings put secure user_setup_complete 1;

2020-08-03 14:48:42

Android adb sync同步分区

adb root;adb remount;export ANDROID_PRODUCT_OUT=out/target/product/$target_project;adb syncps : 这个方法只能针对 remount 成功之后的软件,而且每次 new/remake 之后的软件都会需要sync很多的文件,从而导致空间不足sync不成功的问题,所以一般模块编译的时候可以使用,因为不需要指定push的文件和目标位置一股脑儿的全部push,可以很方便的集成到一键编译push脚本。new/remake 之

2020-08-03 14:43:46

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

2020-08-03 14:30:59

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

2020-08-03 14:17:47

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 指定下载方式

2020-08-03 13:56:42

Android 输入法显示图标

InputMethodService.java 类中有一个方法 showStatusIcon(R.drawable.ic_number);

2020-08-01 14:33:43

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

2020-08-01 14:23:43

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

2020-08-01 13:56:55

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

2020-08-01 13:53:54

Android build 编译打印详细过程

我们在make otapackage编译android代码的时候,有时候需要跟踪详细的过程,包括所有的过程,可以修改build/core/Makefile,赋值hide := 为空即可# Put some miscellaneous rules here# HACK: clear LOCAL_PATH from including last build target before calling# intermedites-dir-forLOCAL_PATH := $(BUILD_SYSTEM)

2020-08-01 13:50:38

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

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

2020-08-01 09:55:32

Android SearchView 返回键无效解决方案

Android中SearchView控件在设置iconifiedByDefault="false"时会出现一个问题:打开页面控件获取到焦点后,按返回键无法返回。解决方案mSearchView.setFocusableInTouchMode(true);

2020-07-31 11:08:26

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

2020-07-31 11:05:45

Android Emoji表情字符列表

https://apps.timwhitlock.info/emoji/tables/unicodeimport android.content.Context;import android.view.Gravity;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.TextView;import java.util.Arr

2020-07-31 10:55:37

Android屏蔽所有物理按键

frameworks\base\services\core\java\com\android\server\wm\WindowManagerService.javacomputeScreenConfigurationLocked 方法将 hardKeyboardAvailable 改为false。boolean hardKeyboardAvailable = false;

2020-07-31 10:53:02

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() {

2020-07-31 10:49:25

Android Provision源码分析

Provision主要作用是作为开机引导用户进行一些基本设置。但是在原生的 android 系统中,这个 provision 非常的简单,只有一个空白的 activity,这个主要就是留给 厂商自己定制的,在Android中,寻找Launcher的时候是根据HOME的filter(在Manifest中定义的<category android:name="android.intent.category.HOME" />)来过滤,而Provision的DefaultActivity中不仅配置了cat

2020-07-31 09:51:29

instanceOf 的另外一种写法

if (Activity.class.isInstance(mContext)) {}等同于if (mContext instanceof Activity) {}

2020-07-31 09:27:05

不需要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

2020-07-31 09:25:31

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。