android权限的未知来源PROCESS_OUTGOING_CALL

时间:2018-12-17 18:06:27

标签: android android-permissions

最近,我从Google收到一封电子邮件,提示我的一个应用程序正在使用权限PROCESS_OUTGOING_CALLS。

我查看了我的Android清单文件中的PROCESS_OUTGOING_CALLS,并且还全局搜索了字符串PROCESS_OUTGOING_CALLS。我似乎仍然找不到此权限字符串。

在构建过程中,我不会对任何文件进行任何修改-接下来应该怎么做才能确定在哪里指定了PROCESS_OUTGOING_CALLS?

在我的清单上,

我只有指定的那些:

<uses-permission android:name=".permission.C2D_MESSAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.GET_TASKS" />

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />

<uses-permission android:name="android.permission.VIBRATE" />

按照@android_muncher的建议,我使用应用清单清单查看器提取了应用的AndroidManifest,然后复制/粘贴了提取器在此处看到的内容(应用名称略有更改,并且删除了所有标签。

<?xml version="1.0" encoding="utf-8"?>
<manifest
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:versionCode="277"
        android:versionName="2.7.7"
        package="com.myApp.android.partner"
        platformBuildVersionCode="26"
        platformBuildVersionName="8.0.0">
        <uses-sdk
                android:minSdkVersion="18"
                android:targetSdkVersion="26"/>
        <uses-permission
                android:name="android.permission.INTERNET"/>
        <uses-permission
                android:name="android.permission.WAKE_LOCK"/>
        <uses-permission
                android:name="android.permission.CAMERA"/>
        <uses-permission
                android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <uses-permission
                android:name="android.permission.READ_EXTERNAL_STORAGE"/>
        <uses-permission
                android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
        <uses-permission
                android:name="android.permission.RECORD_AUDIO"/>
        <uses-permission
                android:name="android.permission.RECORD_VIDEO"/>
        <uses-permission
                android:name="android.permission.ACCESS_NETWORK_STATE"/>
        <uses-permission
                android:name="android.permission.READ_PHONE_STATE"/>
        <uses-permission
                android:name="android.permission.ACCESS_COARSE_LOCATION"/>
        <uses-permission
                android:name="android.permission.GET_TASKS"/>
        <uses-feature
                android:name="android.hardware.camera"/>
        <uses-feature
                android:name="android.hardware.camera.autofocus"/>
        <uses-permission
                android:name="android.permission.VIBRATE"/>
        <permission
                android:name=".permission.C2D_MESSAGE"
                android:protectionLevel="signature"/>
        <uses-permission
                android:name=".permission.C2D_MESSAGE"/>
        <uses-feature
                android:glEsVersion="0x20000"
                android:required="true"/>
        <library
                android:name="@2131297389"/>
        <uses-permission
                android:name="com.google.android.c2dm.permission.RECEIVE"/>
        <application
                android:theme="@2131558465"
                android:label="@2131296395"
                android:icon="@2130903040"
                android:name="com.myApp.android.model.application.myAppPartnerApplication"
                android:debuggable="true"
                testOnly="true"
                allowBackup="true"
                largeHeap="true"
                supportsRtl="true">
                <receiver
                        android:name="com.myApp.android.model.receiver.SchedulerReceiver"/>
                <receiver
                        android:name="io.branch.referral.InstallListener"
                        android:exported="true">
                        <intent-filter>
                                <action
                                        android:name="com.android.vending.INSTALL_REFERRER"/>
                        </intent-filter>
                </receiver>
                <service
                        android:name="com.myApp.android.model.service.local.scheduler.SchedulerService"
                        android:exported="false"/>
                <service
                        android:name="com.myApp.android.model.integration.gcm.myAppPartnerGcmListenerService"
                        android:exported="false">
                        <intent-filter>
                                <action
                                        android:name="com.google.android.c2dm.intent.RECEIVE"/>
                        </intent-filter>
                </service>
                <receiver
                        android:name="com.myApp.android.model.event.system.connection.NetworkStateChangeReceiver">
                        <intent-filter>
                                <action
                                        android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
                        </intent-filter>
                </receiver>
                <receiver
                        android:name="com.myApp.android.model.event.system.phone.PhoneBroadcastReceiver">
                        <intent-filter>
                                <action
                                        android:name="android.intent.action.PHONE_STATE"/>
                        </intent-filter>
                </receiver>
                <receiver
                        android:name="com.google.android.gms.gcm.GcmReceiver"
                        android:permission="com.google.android.c2dm.permission.SEND"
                        android:exported="true">
                        <intent-filter>
                                <action
                                        android:name="com.google.android.c2dm.intent.RECEIVE"/>
                                <category
                                        android:name="com.myApp.android"/>
                        </intent-filter>
                </receiver>
                <service
                        android:name="com.myApp.android.model.integration.gcm.InstanceIDListenerService"
                        android:exported="false">
                        <intent-filter>
                                <action
                                        android:name="com.google.android.gms.iid.InstanceID"/>
                        </intent-filter>
                </service>
                <service
                        android:name="com.myApp.android.model.integration.gcm.RegistrationIntentService"
                        android:exported="false"/>
                <service
                        android:name="com.twitter.sdk.android.tweetcomposer.TweetUploadService"
                        android:enabled="true"
                        android:exported="false"/>
                <meta-data
                        android:name="android.support.VERSION"
                        android:value="26.1.0"/>
                <receiver
                        android:name="com.google.android.gms.measurement.AppMeasurementReceiver"
                        android:enabled="true"
                        android:exported="false"/>
                <receiver
                        android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver"
                        android:permission="android.permission.INSTALL_PACKAGES"
                        android:enabled="true"
                        android:exported="true">
                        <intent-filter>
                                <action
                                        android:name="com.android.vending.INSTALL_REFERRER"/>
                        </intent-filter>
                </receiver>
                <service
                        android:name="com.google.android.gms.measurement.AppMeasurementService"
                        android:enabled="true"
                        android:exported="false"/>
                <service
                        android:name="com.google.android.gms.measurement.AppMeasurementJobService"
                        android:permission="android.permission.BIND_JOB_SERVICE"
                        android:enabled="true"
                        android:exported="false"/>
                <receiver
                        android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver"
                        android:permission="com.google.android.c2dm.permission.SEND"
                        android:exported="true">
                        <intent-filter>
                                <action
                                        android:name="com.google.android.c2dm.intent.RECEIVE"/>
                                <category
                                        android:name="com.myApp.android.partner"/>
                        </intent-filter>
                </receiver>
                <service
                        android:name="com.google.firebase.iid.FirebaseInstanceIdService"
                        android:exported="true">
                        <intent-filter
                                android:priority="-500">
                                <action
                                        android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
                        </intent-filter>
                </service>
                <provider
                        android:name="com.google.firebase.provider.FirebaseInitProvider"
                        android:exported="false"
                        android:authorities="com.myApp.android.partner.firebaseinitprovider"
                        android:initOrder="100"/>
                <provider
                        android:name="android.support.v4.content.FileProvider"
                        android:exported="false"
                        android:authorities="com.myApp.android.partner.multipicker.fileprovider"
                        android:grantUriPermissions="true">
                        <meta-data
                                android:name="android.support.FILE_PROVIDER_PATHS"
                                android:resource="@2131165184"/>
                </provider>
                <meta-data
                        android:name="android.arch.lifecycle.VERSION"
                        android:value="27.0.0-SNAPSHOT"/>
        </application>
</manifest>

1 个答案:

答案 0 :(得分:1)

构建应用程序后,浏览您的最终清单文件。清单合并将使用项目中使用的各种库中的AndroidManifest文件。我认为某些图书馆正在使用此权限。

https://developer.android.com/studio/build/manifest-merge