Test SVA to call listModules error message:"android.permission.CAPTURE_AUDIO_HOT


#1

When I write a user SVAApp to call listModules API,the following run time error message occurs on Eclipse:
"W/ServiceManager(310): Permission failure: android.permission.CAPTURE_AUDIO_HOTWORD from uid=10086 pid=4394"
“E/(310): android.permission.CAPTURE_AUDIO_HOTWORD”

I also added “<uses-permission android:name=“android.permission.CAPTURE_AUDIO_HOTWORD” />” on AndroidManifest.xml.
Is it because peripherals handset mic is not ready to causing the problem?


#2

android.permission.CAPTURE_AUDIO_HOTWORD is, quoting frameworks/base/core/res/AndroidManifest.xml, “Not for use by third-party applications” and, as a result, it is marked with a protection level of “signature|system”. Thus, in addition to the usual manifest checks it will also require the the application have the right signature (i.e. it is signed using the same signature as base OS) or be installed in /system.

In practice that means your application will not be able to run on a system unless you know the build signature and/or you have root access.

I think, for the Dragonboard 410c, you should have easy root access which means the following instructions may allow your application to run on your development board:


#3

Sorry, discusion in another thread made me realize that the advice about how to access system permissions is somewhat out of date (since Android 4.4 there’s no such thing as a system app). For information see:

This means that the (untested :wink: ) command to install a privileged app should be more like:

adb root
adb remount
adb push /path/to/My.apk /system/priv-app/My.apk