[SPRD] 收录

简介: [SPRD] 收录

1、通过裁剪应用的方式进行内存优化的一般方案


[ANSWER]

开机后静置10min,通过命令行命令:

adb shell dumpsys meminfo > meminfo.txt

抓取当前内存信息,查看Total PSS by OOM adjustment列,对不需要的应用进行裁剪


2、为什么有些版本不显示紧急电话通话记录


[ANSWER]

现在的紧急电话通话记录是否显示是随版本(运营商)控制的。

1.所有版本都需要显示紧急电话通话记录

/packages/services/Telecomm/res/values/config.xml

true

2.某个或多个运营商需要显示,而其他不显示

在/vendor/sprd/carriers下选择运营商,比如claro需要显示,则添加

/vendor/sprd/carriers/claro/overlays/packages/services/Telecomm/res/values/

true

/packages/services/Telecomm/res/values/config.xml

false


3、如何在某个Activity中屏蔽状态栏与导航键


[ANSWER]

1.在某个Activity界面禁止下拉状态栏:

//获取StatusBarManager

StatusBarManager mStatusBarManager = (StatusBarManager) mContext.getSystemService(Context.STATUS_BAR_SERVICE);

//禁止下拉状态栏

mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);

//退出时解除禁止

mStatusBarManager.disable(StatusBarManager.DISABLE_NONE);

2.在某个Activity界面禁用某个导航键:

可以通过如下flag分别屏蔽导航栏Back/Home/Recent键,屏蔽方式与上面一致。StatusBarManager.DISABLE_BACK/StatusBarManager.DISABLE_HOME/StatusBarManager.DISABLE_RECENT


4、如何配置高温关机默认值?


[ANSWER]

平台上层有高温关机,没有低温关机,在下面配置,默认68度关机

/frameworks/base/core/res/res/values/config.xml

680


5、在Launcher主界面上,长按指定应用的shortcut以后,可以拖动,但是上方的移除按钮不显示


[ANSWER]

定位到src/com/android/launcher3/ButtonDropTarget.java中

public void onDragStart(DropTarget.DragObject dragObject, DragOptions options) {
+     if("com.android.xxx".equals(dragObject.dragInfo.getTargetComponent().getPackageName()))  //com.android.xxx为不可移除的应用包名
+        {
+            setVisibility(View.GONE);
+        }
+        else
+        {
            mActive = supportsDrop(dragObject.dragInfo);
            mDrawable.setColorFilter(null);
            if (mCurrentColorAnim != null) {
                mCurrentColorAnim.cancel();
                mCurrentColorAnim = null;
            }
            setTextColor(mOriginalTextColor);
            setVisibility(mActive ? View.VISIBLE : View.GONE);
            mAccessibleDrag = options.isAccessibleDrag;
            setOnClickListener(mAccessibleDrag ? this : null);
+        }
    }


6、如何通过adb获取imei


[ANSWER]

Android11:

adb shell service call iphonesubinfo 1


Android12:

(a)userdebug 需要执行adb root

adb shell service call iphonesubinfo 4 i32 0 s16 com.android.phone null


(b)user版本用shell

adb shell service call iphonesubinfo 4 i32 2 s16 shell null


Android 13

adb shell service call iphonesubinfo 4 i32 1 s16 shell


7、Android10平台如何修改支持多应用同时录音


[ANSWER]

在AudioPolicyService::isVirtualSource中增加对应的audio source。

例如:假设应用层申请的音源类型为MediaRecorder.AudioSource.MIC,在AudioPolicyService::isVirtualSource中增加对应的audio source:


frameworks\av\services\audiopolicy\service\AudioPolicyService.cpp

bool AudioPolicyService::isVirtualSource(audio_source_t source)
{
    switch (source) {
        case AUDIO_SOURCE_VOICE_UPLINK:
        case AUDIO_SOURCE_VOICE_DOWNLINK:
        case AUDIO_SOURCE_VOICE_CALL:
        case AUDIO_SOURCE_REMOTE_SUBMIX:
        case AUDIO_SOURCE_FM_TUNER:
+++     case AUDIO_SOURCE_MIC:
            return true;
        default:
            break;
    }
    return false;
}


8、展讯如何实现插USB上电自动开机


[ANSWER]

在u-boot15\common\cmd_cboot.c

boot_mode_enum_type get_mode_from_charger(void中
if (charger_connected()) {
debugf("get mode from charger\n");
return CMD_CHARGE_MODE;  //改为return CMD_NORMAL_MODE;
} else {
return CMD_UNDEFINED_MODE;
}

9、后台录音app如何录制通话过程中的音频

[ANSWER]

1、如果应用需要通话录音,需要申请 android.permission.CAPTURE_AUDIO_OUTPUT 权限,且UID改成 “android.uid.system”,即只能是系统应用。


2、如果录音应用为第三方应用,无法修改应用代码,可在FW层做修改,参考代码如下:


/frameworks/av/services/audiopolicy/service/AudioPolicyService.cpp文件


@@ -385,6 +386,13 @@ status_t AudioPolicyService::getInputForAttr(const audio_attributes_t *attr,
     }
     bool canCaptureOutput = captureAudioOutputAllowed(opPackageName,pid, uid);
+
+       if(!strcmp("应用包名",String8(opPackageName).c_str())){
+               ALOGI("%s, set canCaptureOutput=true, opPackageName=%s",
+                __func__, String8(opPackageName).c_str());
+          canCaptureOutput = true;
+       }
+
     if ((attr->source == AUDIO_SOURCE_VOICE_UPLINK ||
         attr->source == AUDIO_SOURCE_VOICE_DOWNLINK ||
         attr->source == AUDIO_SOURCE_VOICE_CALL ||


10、android13中锁屏界面充电信息显示逻辑?


[ANSWER]

平台支持在锁屏界面针对不同充电速度显示不同的充电提示语,快充、慢充对应的充电功率在相关配置文件中配置。相关代码逻辑如下:

根据充电速度mChargingSpeed显示对应提示语


SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java

     protected String computePowerIndication() {
...
              switch (mChargingSpeed) {
                  case BatteryStatus.CHARGING_FAST:
                      chargingId = hasChargingTime
                              ? R.string.keyguard_indication_charging_time_fast
                              : R.string.keyguard_plugged_in_charging_fast;
                      break;
                  case BatteryStatus.CHARGING_SLOWLY:
                      chargingId = hasChargingTime
                              ? R.string.keyguard_indication_charging_time_slowly
                              : R.string.keyguard_plugged_in_charging_slowly;
                      break;
                  default:
                      chargingId = hasChargingTime
                              ? R.string.keyguard_indication_charging_time
                              : R.string.keyguard_plugged_in;
                      break;
              }


判断充电速度:快充、慢充、常规充电

frameworks/base/packages/SettingsLib/src/com/android/settingslib/fuelgauge/BatteryStatus.java

      public final int getChargingSpeed(Context context) {
         final int slowThreshold = context.getResources().getInteger(
                  R.integer.config_chargingSlowlyThreshold);
          final int fastThreshold = context.getResources().getInteger(
                  R.integer.config_chargingFastThreshold);
          return maxChargingWattage <= 0 ? CHARGING_UNKNOWN :
                  maxChargingWattage < slowThreshold ? CHARGING_SLOWLY :
                          maxChargingWattage > fastThreshold ? CHARGING_FAST :
                                  CHARGING_REGULAR;
      }

配置文件中小于5w是慢充,大于15w是快充

<!-- These resources are around just to allow their values to be customized -->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- Threshold in micro watts below which a charger is rated as "slow"; 1A @ 5V -->
     <integer name="config_chargingSlowlyThreshold">5000000</integer>
    <!-- Threshold in micro watts above which a charger is rated as "fast"; 3A @ 5V  -->
     <!-- UNISOC: modify for Bug1838475 Modify the fast charge threshold -->
    <integer name="config_chargingFastThreshold">15000000</integer>

11、Android 12 pull /data/system/下的文件是乱码


[ANSWER]

Android12的/data/system/XXXX.xml被默认设置二进制xml格式,直接打开是乱码。

可以通过修改配置将其改为普通的xml格式

adb shell setprop persist.sys.binary_xml false

重启手机,再获取XXXX.xml,就是普通xml格式了

目录
相关文章
|
数据采集 监控 算法
如何让谷歌收录网站
答案是:谷歌快速收录网站可以通过GPC爬虫池技术完成。
156 0
|
数据采集 搜索推荐 安全
谷歌文章收录最快要多久?
答案是:谷歌文章收录最快是24小时内。 谷歌作为全球最大的搜索引擎,其对文章的收录机制一直是SEO专家和内容创建者关心的焦点。 许多人都希望自己发布的内容能在谷歌上尽快被收录,但实际的收录速度受到许多因素的影响。 本文将深入探讨这些因素,并提供一些建议,帮助你的内容更快被谷歌收录。
156 0
谷歌文章收录最快要多久?
|
数据采集 搜索推荐 安全
什么叫GSI谷歌收录服务?
答:顾名思义,就是我们通过相关的技术手段,技术操作,帮你实现你的网站快速被谷歌收录。 在我们深入了解谷歌SEO的过程中,一项被频繁提及的服务就是GSI谷歌收录服务。 让我们深入探讨这一主题,看看GSI谷歌收录服务是什么以及它如何影响我们网站的谷歌SEO。
188 0
什么叫GSI谷歌收录服务?
|
数据采集 算法 搜索推荐
谷歌文章不收录是什么原因?
答案是:文章质量太差,建议使用GPC爬虫池促收录。 谷歌的收录机制 谷歌搜索引擎的收录机制非常复杂,它的机器人会通过各种算法来决定是否收录一个网页。 这些算法会考虑网站的内容质量、网站的可访问性、链接的数量和质量,以及网站是否符合谷歌的指南等因素。 内容质量 网站的内容质量是谷歌是否收录的重要因素之一。 如果您的文章内容太短,没有提供有价值的信息,或者是复制其他网站的内容,那么谷歌可能不会收录您的文章。
133 0
谷歌文章不收录是什么原因?
|
数据采集 搜索推荐 安全
谷歌收录新网站最快多久?
答案是:最快是24小时内。 对于新的网站所有者来说,Google搜索引擎的收录速度常常是一个令人关心的问题。 下面,我们将探讨谷歌收录新网站的可能时间,以及可以采取的策略来加速这一过程。
310 0
谷歌收录新网站最快多久?
|
数据采集 搜索推荐 安全
谷歌最快多久能收录我的网站?
答案是:最快是24小时内。 为什么谷歌的收录时间很重要 在网站建设和优化过程中,站长们都非常关心自己的站点何时能被谷歌搜索引擎收录。 这主要是因为,被谷歌收录意味着您的网站内容可以出现在用户的搜索结果中,从而带来流量和潜在的转化机会。 影响谷歌收录时间的因素 站点质量 谷歌对于网站的质量要求颇高。 拥有高质量原创内容、良好的用户体验和高速的加载速度的网站更容易受到搜索引擎的欢迎,并且可能被更快地收录。
187 0
谷歌最快多久能收录我的网站?
|
数据采集 搜索推荐 算法
为什么谷歌文章不收录?
答案是:因为你的文章质量太差,建议使用GPC爬虫池促收录。 搜索引擎算法的不断进化 谷歌作为全球最大的搜索引擎,其背后的搜索算法非常复杂。 每次的更新可能都会影响到某些网站在搜索结果中的排名。 这里我们将探讨几个可能的原因。 内容质量问题 内容是谷歌排名的一个重要指标。 谷歌始终优先显示高质量、原创、有价值的内容。 如果您的文章内容过于浅显、复制粘贴或者与其他网站重复率较高,那么谷歌可能不会收录。
100 0
为什么谷歌文章不收录?
|
数据采集 安全 搜索推荐
谷歌文章不被收录的原因?
答案是:文章质量太差,建议使用GPC爬虫池促收录。 内容质量问题 缺乏原创性 直接复制和粘贴他人的内容,或者重复发布自己网站上的旧内容,都不会被谷歌看好。 谷歌重视原创和有价值的内容,而不是重复和低质量的文章。 内容过于薄弱 文章内容过于简单或者没有深入的信息和分析,可能会被谷歌视为“薄弱”内容。 谷歌优先考虑为其用户提供深入、有价值的内容。
154 0
谷歌文章不被收录的原因?
|
数据采集 搜索推荐 安全
谷歌收录多好吗?
答案是:肯定的! 谷歌收录多的情况 在谷歌搜索引擎优化中,网页的收录量是评价一个网站性能的重要指标之一。 收录量多,意味着你的网站有更多的网页被谷歌搜索引擎索引,这将直接影响你的网站在搜索结果中的可见度和排名。
139 0
谷歌收录多好吗?
|
数据采集 搜索推荐 SEO
谷歌收录网站要多久?
答案是:24小时内。 谷歌搜索引擎对网站的收录时间没有一个确切的答案,因为这与网站的类型、内容质量、SEO优化程度等多个因素有关。 然而,通过使用一些工具和方法,我们可以尽快让谷歌收录网站。 网站类型和内容质量 首先,新创建的网站通常需要一段时间才能被谷歌收录。 这个时间范围可以从几天到几周不等。 同样,更新的内容或者新添加的页面也需要一些时间才能被谷歌的爬虫发现并收录。
348 0
谷歌收录网站要多久?