<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[时光]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/CodingNotes</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; CodingNotes]]></copyright><item><title><![CDATA[【安装PyQt5】Error: Microsoft Visual C++ 14.0]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/144379277</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/144379277</guid><author>CodingNotes</author><pubDate>Tue, 10 Dec 2024 17:43:10 +0800</pubDate><description><![CDATA[Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools"]]></description><category></category></item><item><title><![CDATA[MTK刷机错误代码]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/140763970</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/140763970</guid><author>CodingNotes</author><pubDate>Mon, 29 Jul 2024 10:19:45 +0800</pubDate><description><![CDATA[【解决办法】：5069一般都是走完红条出现，或者是紫条时出现，也有可能是在走黄条的时候出现的5069错误，如果你的刷机包正确而且没有问题那么这个机器是无法修复了，这个错误是字库损坏引起的，建议大家退机保平安！另外的处理方法：刷机时黄颜色进度条55%，弹出过错误代码3060 ，把下载换成（全部格式化和下载），再次点下载，拔插电池、数据线，黄颜色进度75%，再弹出过错误代码3060 ，再次点下载，拔插电池、数据线，最终完成。【解决办法】：方法一：重新找 ROM，你的 ROM 是不对的！]]></description><category></category></item><item><title><![CDATA[MTK默认开启Modem Log]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/139445528</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/139445528</guid><author>CodingNotes</author><pubDate>Tue, 04 Jun 2024 16:02:31 +0800</pubDate><description><![CDATA[基于Android12，user默认开启Modem Log。]]></description><category></category></item><item><title><![CDATA[【认证相关】FTA]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/128834239</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/128834239</guid><author>CodingNotes</author><pubDate>Wed, 01 Feb 2023 15:28:34 +0800</pubDate><description><![CDATA[FTA测试相关流程以及问题分析]]></description><category></category></item><item><title><![CDATA[Android系统目录预置media文件]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/123714546</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/123714546</guid><author>CodingNotes</author><pubDate>Thu, 24 Mar 2022 16:35:59 +0800</pubDate><description><![CDATA[在处理Android平台的项目时，遇到客户提出的要求预置一个MP4类型的视频文件在系统目录。

经过参考一些文档，处理方案如下：

一、将媒体文件拷贝在out目录

方法类似预置第三方app

Android.mk


LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS) 
 
LOCAL_MODULE_TAGS := optional
LOCAL_POST_PROCESS_COMMAND := $(shell mkdir -p $(TARGET_OUT)/m]]></description><category></category></item><item><title><![CDATA[时间使用12小时制，下拉状态栏和锁屏时间格式“上午”或“下午”显示]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122626605</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122626605</guid><author>CodingNotes</author><pubDate>Fri, 21 Jan 2022 17:53:05 +0800</pubDate><description><![CDATA[diff --git a/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml b/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml
old mode 100644
new mode 100755
index 2d08350..dafa277
--- a/frameworks/base/packages/SystemUI/res-keyguard/.]]></description><category></category></item><item><title><![CDATA[关于9.0后添加桌面小部件问题]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122626404</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122626404</guid><author>CodingNotes</author><pubDate>Fri, 21 Jan 2022 17:50:25 +0800</pubDate><description><![CDATA[客户要求在9.0系统添加桌面时钟小部件，本以为只需要在xml添加相应的appwidget属性就可以，但是添加之后发现桌面并没有添加成功。

结果发现是因为这个项目使用了packages下面的launcher3并且对应的是go的布局，有个关键属性讲小部件的部分给屏蔽掉了。

packages\apps\Launcher3\go\src_flags\com\android\launcher3\config\FeatureFlags.java

GO_DISABLE_WIDGETS

该属性默认是为ture，改为]]></description><category></category></item><item><title><![CDATA[Android 第一次开机速度优化]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122595546</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122595546</guid><author>CodingNotes</author><pubDate>Thu, 20 Jan 2022 10:28:10 +0800</pubDate><description><![CDATA[现在很多Android项目都需要预装很多apk。

主要在/system/app，/system/priv-app/，/system/vendor/app等目录下。

预置很多应用的结果就是，第一次开机的时候systemService.java 会调用PackageManagerService.java对这几个目录下的apk多dexopt的优化，生成oat文件。apk越多，首次开机的时间也就越长，导致第一次开机需要5-6分钟，不利于用户体验。

对于这些应用，我们可以对其进行odex优化：

一、在dev.]]></description><category></category></item><item><title><![CDATA[默认关闭充电，锁屏，触摸等提示音]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122595446</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122595446</guid><author>CodingNotes</author><pubDate>Thu, 20 Jan 2022 10:07:26 +0800</pubDate><description><![CDATA[锁屏和触摸提示音的设置可以直接修改defaults文件。改1为0或true为false。


a/vendor/mediatek/proprietary/packages/apps/SettingsProvider/res/values/defaults.xml
+++ b/vendor/mediatek/proprietary/packages/apps/SettingsProvider/res/values/defaults.xml
@@ -75,7 +75,7 @@
     &lt;string n]]></description><category></category></item><item><title><![CDATA[Android 去掉设置中item显示]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122186277</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122186277</guid><author>CodingNotes</author><pubDate>Tue, 28 Dec 2021 10:12:41 +0800</pubDate><description><![CDATA[Settings中的item大部分都是通过Preference(key)进行添加的，所以要删除某些item只需要在displayPreference()方法中进行removePreference操作即可。

每个单独的item都由独立的PreferenceController进行处理和显示。

例如：去掉设置中声音里面的勿扰功能

路径：vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/notific]]></description><category></category></item><item><title><![CDATA[Android 9.0 去掉主界面or应用列表上面的Search显示]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122186019</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122186019</guid><author>CodingNotes</author><pubDate>Tue, 28 Dec 2021 10:05:37 +0800</pubDate><description><![CDATA[一、修改launcher主界面的search

修改路径：packages/apps/Launcher3/res/layout/search_container_workspace.xml


--- a/alps/packages/apps/Launcher3/res/layout/search_container_workspace.xml
+++ b/alps/packages/apps/Launcher3/res/layout/search_container_workspace.xml
@@ -2]]></description><category></category></item><item><title><![CDATA[Android 下拉菜单列表客制化处理]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/122185809</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/122185809</guid><author>CodingNotes</author><pubDate>Tue, 28 Dec 2021 09:56:01 +0800</pubDate><description><![CDATA[修改下拉菜单列表内的快捷设置。

修改路径：vendor/mediatek/proprietary/packages/apps/SystemUI/res/values/config.xml

该目录可以客制化在子项目的overlay中。


--- a/alps/device/along/a17_meilan/overlay/vendor/mediatek/proprietary/packages/apps/SystemUI/res/values/config.xml
+++ b/alps/device/a]]></description><category></category></item><item><title><![CDATA[Android 9.0 去掉Launcher 界面搜索应用框]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/121970314</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/121970314</guid><author>CodingNotes</author><pubDate>Thu, 16 Dec 2021 11:24:06 +0800</pubDate><description><![CDATA[需求：去掉launcher 中全部App界面上面搜索应用框

修改位置

packages\apps\Launcher3\src\com\android\launcher3\allapps\AllAppsContainerView.java

在 onFinishInflate() 中添加一行 mSearchContainer.setVisibility(View.GONE);


@Override
protected void onFinishInflate() {
    super.onFinish]]></description><category></category></item><item><title><![CDATA[AndroidManifest配置文件中的属性(view滑动卡顿)]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/121604410</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/121604410</guid><author>CodingNotes</author><pubDate>Mon, 29 Nov 2021 10:44:17 +0800</pubDate><description><![CDATA[关于部分AndroidManifest中部分属性会影响到view等布局异常的问题。

application标签下的：android:allowBackup="true" ：Android API Level 8及以上android系统为应用程序中的数据提供了备份和回复功能。用户可以通过adb backup和adb restore来对应用程序的数据进行备份和回复，这可能会带来一定的安全风险。

android:supportsRtl=“true”：这个api是17（也就是Android4.2）以后才有的。声]]></description><category></category></item><item><title><![CDATA[Android R 版本客制化处理合集 (一)]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/119726955</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/119726955</guid><author>CodingNotes</author><pubDate>Mon, 29 Nov 2021 10:34:18 +0800</pubDate><description><![CDATA[NFC (Enabler\Reader\TapPay)


vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/mediatek/nfc/MtkNfcEnabler.java
@@ -45,6 +45,10 @@ public class MtkNfcEnabler implements SwitchBar.OnSwitchChangeListener {
     private QueryTask mQueryTask = null]]></description><category></category></item><item><title><![CDATA[Android 拨号盘应用源码分析]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/121374670</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/121374670</guid><author>CodingNotes</author><pubDate>Wed, 17 Nov 2021 14:47:02 +0800</pubDate><description><![CDATA[工程依赖关系

com.android.dialer是主工程依赖于

com.android.contacts.common工程和com.android.phone.common工程

com.android.contacts.common又依赖于

com.android.phone.common工程和com.android.common工程

另外一些support包也作为链接工程被引入，以上代码均取自google源码

关键类

DialtactsActivity


com.android.dial]]></description><category></category></item><item><title><![CDATA[Android 系统重启原因分析]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/117819129</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/117819129</guid><author>CodingNotes</author><pubDate>Fri, 11 Jun 2021 15:34:22 +0800</pubDate><description><![CDATA[重启原因分类

1.上层造成重启
system_server被杀
watchdog重启
重要线程阻塞

2.kernel造成重启
空指针
非法地址

3.kernel watchdog造成重启，原因不确定
内存原因
nand驱动

log查看步骤及关键字

1. 重启后的kernel.log或misc/cmdline.log

在log最前面，会有很长的一段，如：

initrd=0x85500000,0x204229 apv="td860-user 4.1.2 MocorDroid4.1....]]></description><category></category></item><item><title><![CDATA[Android 如何在上层自定义IMS_UA]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/117079693</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/117079693</guid><author>CodingNotes</author><pubDate>Thu, 20 May 2021 15:54:16 +0800</pubDate><description><![CDATA[处理项目问题是遇到要求修改IMS User-Agent的一个需求，发现该字段是在modem中预制的。

下面是在上层对该问题的处理方案：


--- a/alps/vendor/mediatek/proprietary/packages/services/Ims/src/com/mediatek/ims/ImsService.java
+++ b/alps/vendor/mediatek/proprietary/packages/services/Ims/src/com/mediatek/ims/ImsSe]]></description><category></category></item><item><title><![CDATA[Android R 版本SystemUI下拉长按报错]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/116833670</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/116833670</guid><author>CodingNotes</author><pubDate>Sat, 15 May 2021 09:45:58 +0800</pubDate><description><![CDATA[错误日志：


2021-05-14 16:39:35.643 2730-8048/? E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #3
    Process: com.android.systemui, PID: 2730
    java.lang.RuntimeException: Can't create handler inside thread Thread[AsyncTask #3,5,main] that has not called Loop]]></description><category></category></item><item><title><![CDATA[Android 监听数据库的改变]]></title><link>https://blog.youkuaiyun.com/CodingNotes/article/details/116496788</link><guid>https://blog.youkuaiyun.com/CodingNotes/article/details/116496788</guid><author>CodingNotes</author><pubDate>Fri, 07 May 2021 16:46:10 +0800</pubDate><description><![CDATA[在搬砖时，大部分软件架构都会对数据库进行操作。

本文记录的是如何对数据库进行监听。

监听SMS数据库为例：

监听短信数据库的变化，添加删除修改，变化的时候会回调onChange方法


import android.content.ContentResolver;
import android.database.ContentObserver;
import android.net.Uri;

/**
 * 建立数据库观察者
 */
public class SmsDatabaseChaneObser]]></description><category></category></item></channel></rss>