特定应用不可点击禁用,GMS跑测相关:GTS跑测,需要 search engine selector 不可禁用,CTS跑测问题

方法一:

系统应用和homepackage 不允许disable,所以就在编译的时候把它作为系统应用编译就行,给系统签名,获得系统级权限

android:sharedUserId="android.uid.system"

比如让谷歌的Search Engine Selctor不允许禁用,就找到这个应用的apk编译目录,

首先包名是com.google.android.apps.setupwizard.searchselector

是在SetupWizard里面一起编译的

vendor/google/apps/ SetupWizard/Android.mk

找到

LOCAL_MODULE := SearchSelector

修改

-LOCAL_CERTIFICATE := PRESIGNED

+LOCAL_CERTIFICATE := platform

方法二:

在vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/applications/ApplicationFeatureProviderImpl.java

方法体

public Set<String> getKeepEnabledPackages() {

最后return keepEnabledPackages前添加

keepEnabledPackages.add("com.google.android.apps.setupwizard.searchselector");

方法一是实打实变成了系统应用了,有系统级权限,但是方法二只是改了设置的显示

GTS跑测问题

GTS报错是:

1,arm64-v8a GtsRegulationComplianceTestCases

com.google.android.regulationcompliance.gts.EEAComplianceTest#testEEAv2Compliance

上面是模块和单例

下面是报错,就需要search engine selector 不可禁用

java.lang.RuntimeException: This build does not meet all of the EEA requirements for EEA devices.

2,GtsMediaTestCases

com.google.android.media.gts.WidevineH264PlaybackTests#testL3WithUHD30

com.google.android.media.gts.WidevineH264PlaybackTests#testCbcsL3WithUHD30

报错信息:java.lang.Exception: Failed components: &lt; Video Reached Seconds: The Video only played to 17933 ms instead of 20000 ms &gt; 

这个问题没看懂,说是分辨率问题,下面方法能过就行

解决方法:

ProjectConfig.mk里加入

+#DRM(GTS media)

+MTK_WVDRM_SUPPORT = yes

+MTK_PERSIST_PARTITION_SUPPORT = yes

+MTK_SEC_VIDEO_PATH_SUPPORT = no

+MTK_WVDRM_L1_SUPPORT = no

+MTK_DRM_KEY_MNG_SUPPORT = no

+MTK_TEE_GP_SUPPORT = no

defconfig和 debug_defconfig文件也去除,

+# DRM(GTS media)

+# CONFIG_MTK_SEC_VIDEO_PATH_SUPPORT is not set

+# CONFIG_DRM_KEY_MNG_SUPPORT is not set

+# CONFIG_MTK_TEE_GP_SUPPORT is not set

还要增加两个文件override/device/mediatek/mt6765/media_codecs_c2.xml

override/device/mediatek/mt6765/media_codecs_c2_svp.xml

这两个文件在learn文件夹里,出去看

CTS跑测问题:

1, CtsAppTestCases

android.app.cts.SystemFeaturesTest#testSensorFeatures

报错:java.lang.AssertionError: PackageManager#hasSystemFeature(android.hardware.sensor.light) returns true but SensorManager#getSensorList(5) shows sensors [] expected:&lt;true&gt; but was:&lt;false&gt;

意思是android.hardware.sensor.light返回的权限是true;但实际SensorManager需要的false,就不要这个权限

解决方法:

frameworks/ native/data/etc/android.hardware.sensor.light.xml

注释掉里面的permissions

-    <feature name="android.hardware.sensor.light" />

+    <!--<feature name="android.hardware.sensor.light" />-->

这个改完后还会报个相关的错

java.lang.AssertionError: PackageManager#hasSystemFeature(android.hardware.sensor.proximity) returns true but SensorManager#getSensorList(8) shows sensors [] expected:<true> but was:<false>

同理到frameworks/native/data/etc/android.hardware.sensor.proximity.xml

2,CtsSecurityHostTestCases

android.security.cts.SELinuxHostTest#testProcTypeViolators

报错信息:java.lang.AssertionError: The following types in proc must be associated with the "proc_type" attribute: nlscan_file

这个是和Selinux权限相关的,可能有些自定义的权限或者改过权限相关的有问题

解决方法:在device/mediate/ sepolicy/basic/non_plat

里面找到相关引用到nlscan_file 或 proc_type的地方再进行判断,不行就删了再看,只要不是原生的都可以删了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Youth King

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值