文章目录

  • 开发平台基本信息
  • 问题描述
  • 解决方法

开发平台基本信息

芯片: SDM450
版本: Android 9.0
kernel: msm-4.9

问题描述

设备在进行入网认证的时候,公司为了尽快拿到入网证书,会将一些不必要的功能砍掉,这样实验室就不会去测试这些功能,就能少掉很多不必要的麻烦,而录音功能就是个不必要的功能。所以,在系统里面将录音功能移除掉,让实验室无法调用录音功能即可。

解决方法

diff --git a/frameworks/av/media/libmediaplayerservice/MediaRecorderClient.cpp b/frameworks/av/media/libmediaplayerservice/MediaRecorderClient.cpp
index 09be2f4..9fa2641 100644
--- a/frameworks/av/media/libmediaplayerservice/MediaRecorderClient.cpp
+++ b/frameworks/av/media/libmediaplayerservice/MediaRecorderClient.cpp
@@ -49,7 +49,8 @@ const char* recordAudioPermission = "android.permission.RECORD_AUDIO";static bool checkPermission(const char* permissionString) {if (getpid() == IPCThreadState::self()->getCallingPid()) return true;
-    bool ok = checkCallingPermission(String16(permissionString));
+   // bool ok = checkCallingPermission(String16(permissionString));
+    bool ok = false;if (!ok) ALOGE("Request requires %s", permissionString);return ok;}
diff --git a/frameworks/base/media/java/android/media/AudioRecord.java b/frameworks/base/media/java/android/media/AudioRecord.java
index 4356296..de8b41a 100644
--- a/frameworks/base/media/java/android/media/AudioRecord.java
+++ b/frameworks/base/media/java/android/media/AudioRecord.java
@@ -275,18 +275,8 @@ public class AudioRecord implements AudioRoutingpublic AudioRecord(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat,int bufferSizeInBytes)throws IllegalArgumentException {-        this((new AudioAttributes.Builder())
-                    .setInternalCapturePreset(audioSource)
-                    .build(),
-                (new AudioFormat.Builder())
-                    .setChannelMask(getChannelMaskFromLegacyConfig(channelConfig,
-                                        true/*allow legacy configurations*/))
-                    .setEncoding(audioFormat)
-                    .setSampleRate(sampleRateInHz)
-                    .build(),
-                bufferSizeInBytes,
-                AudioManager.AUDIO_SESSION_ID_GENERATE);
-    }
+
+   }/*** @hide
@@ -981,7 +971,10 @@ public class AudioRecord implements AudioRouting*/public void startRecording()throws IllegalStateException {-        android.util.SeempLog.record(70);
+          throw new IllegalStateException("startRecording() called on an "
+                    + "uninitialized AudioRecord.");
+
+      /*  android.util.SeempLog.record(70);if (mState != STATE_INITIALIZED) {throw new IllegalStateException("startRecording() called on an "+ "uninitialized AudioRecord.");
@@ -994,6 +987,7 @@ public class AudioRecord implements AudioRoutingmRecordingState = RECORDSTATE_RECORDING;}}
+       */}/**
diff --git a/frameworks/base/media/java/android/media/MediaRecorder.java b/frameworks/base/media/java/android/media/MediaRecorder.java
index c5a16c0..6c31ba0 100755
--- a/frameworks/base/media/java/android/media/MediaRecorder.java
+++ b/frameworks/base/media/java/android/media/MediaRecorder.java
@@ -847,7 +847,9 @@ public class MediaRecorder*/public void prepare() throws IllegalStateException, IOException{-        if (mPath != null) {+
+          throw new IOException("No valid output file");
+       /* if (mPath != null) {RandomAccessFile file = new RandomAccessFile(mPath, "rws");try {_setOutputFile(file.getFD(), 0, 0);
@@ -861,6 +863,7 @@ public class MediaRecorder}_prepare();
+        */}/**
diff --git a/frameworks/base/media/jni/android_media_MediaCodec.cpp b/frameworks/base/media/jni/android_media_MediaCodec.cpp
index 810996e..b471f19 100644
--- a/frameworks/base/media/jni/android_media_MediaCodec.cpp
+++ b/frameworks/base/media/jni/android_media_MediaCodec.cpp
@@ -1168,7 +1168,7 @@ static void android_media_MediaCodec_start(JNIEnv *env, jobject thiz) {ALOGV("android_media_MediaCodec_start");sp<JMediaCodec> codec = getMediaCodec(env, thiz);
-
+   /*if (codec == NULL) {throwExceptionAsNecessary(env, INVALID_OPERATION);return;
@@ -1177,6 +1177,8 @@ static void android_media_MediaCodec_start(JNIEnv *env, jobject thiz) {status_t err = codec->start();throwExceptionAsNecessary(env, err, ACTION_CODE_FATAL, "start failed");
+   */
+}static void android_media_MediaCodec_stop(JNIEnv *env, jobject thiz) {diff --git a/frameworks/base/media/jni/android_media_MediaRecorder.cpp b/frameworks/base/media/jni/android_media_MediaRecorder.cpp
index 922ad79..7a83dc6 100644
--- a/frameworks/base/media/jni/android_media_MediaRecorder.cpp
+++ b/frameworks/base/media/jni/android_media_MediaRecorder.cpp
@@ -386,7 +386,7 @@ android_media_MediaRecorder_start(JNIEnv *env, jobject thiz){ALOGV("start");sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
-    process_media_recorder_call(env, mr->start(), "java/lang/RuntimeException", "start failed.");
+   // process_media_recorder_call(env, mr->start(), "java/lang/RuntimeException", "start failed.");}static void

[高通SDM450][Android9.0]CTA认证--去掉录音功能相关推荐

  1. [高通SDM450][Android9.0]CTA认证--去掉彩信、短信、通话功能

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 与去掉录音功能同理,设备在进行入网认证 ...

  2. [高通SDM450][Android9.0]CTA认证--去掉GPS功能

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 与去掉录音功能同理,设备在进行入网认证 ...

  3. [高通SDM450][Android9.0]CTA认证--去除某些应用开机使用定位权限

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 设备在进行入网认证,实验室在测试的时候 ...

  4. [高通SDM450][Android9.0]CTA认证--Android6.0以下应用默认不授权

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 设备在进行入网认证的时候,实验室要求应 ...

  5. [高通SDM450][Android9.0]CTA认证--拆分申请权限分组

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 设备在进行入网认证的时候,实验室要求应 ...

  6. [高通SDM450][Android9.0]屏幕显示DPI可动态配置

    文章目录 开发平台基本信息 问题描述 解决方法 去除默认dpi限制 开发平台基本信息 芯片: 高通SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 正常我们要修改 ...

  7. [高通SDM450][Android9.0]屏蔽开放WIFi以及WIFI信号有个x导致无法上网

    文章目录 开发平台基本信息 问题描述 解决方法 1.解决WIFI信号有个x的问题 2.屏蔽开放WIFi 开发平台基本信息 芯片: 高通SDM450 版本: Android 9.0 kernel: ms ...

  8. [高通SDM450][Android9.0]刷机后RTC时钟不生效问题

    文章目录 开发平台基本信息 问题描述 解决方法 1.写入RTC时钟添加增加开机广播 开发平台基本信息 芯片: 高通SDM450 版本: Android 9 kernel: msm-4.19 问题描述 ...

  9. [高通SDM450][Android9.0]adb无法进行remount的解决方案

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 在调试开发的时候,执行remount可 ...

最新文章

  1. 评测指标(metrics)
  2. 齐聚上海,get多媒体开发新技能(内附讲师资料下载)
  3. linux下查看当前用户的 三个命令
  4. hdu 2680 Choose the best route
  5. noj大作业c语言扫雷,noj大作业.doc
  6. messagedigest 图片加密_MessageDigest 加密和解密2
  7. cuda 10.1和 cudnn 7.6.5
  8. 学python最好的方法_对于Python初学者,怎么学才能快速高薪?牢记四条!
  9. 185.部门工资前三高的员工
  10. 手把手教你如何自学计算机,绝对的干货满满!!!
  11. 帮助海外游客规划从成田机场开始日本旅行的新网站上线
  12. 流量从“海量”到“僵化”,精细化运营是企业最后一根救命稻草
  13. Typora 设置代码块的默认编程语言以及字体颜色设置
  14. 数字IC设计学习笔记_静态时序分析STA_伪路径False Paths
  15. c语言链表增加新节点,C语言 链表的创建,以及节点的增加和删除
  16. python中常用的序列化模块_Python 中的序列化模块
  17. 如何解决桌面IE图标不见了?
  18. DB2 DECODE函数
  19. 局域网内设置固定IP
  20. 读书札记:影响英镑的因素

热门文章

  1. Alpine中文字体
  2. 解决ZeroDivisionError: integer division or modulo by zero问题
  3. BAPI_PO_CREATE1 批量创建采购订单(可一个PO采购多个材料)
  4. 短信的发送(SMS)的发送
  5. Docker入门实战看这篇就够了(最新详细以及踩过的坑)
  6. 从顶点覆盖(Vertex Cover)到碰撞集(Hitting Set)的归约
  7. Beego 简单用户注册与登录
  8. 马哲概述 如何理解商品的使用价值与价值以及货币,纸币
  9. win10打开软件显示c盘服务器,【解决】win10 打开本地磁盘 提示找不到应用程序...
  10. 计算机网上培训6,wordexcel计算机基础培训6.pptx