20251212_171425_295应用权限申请部分改造,版本可能会回退。。。

This commit is contained in:
2025-12-12 17:15:52 +08:00
parent 5614848a65
commit 181e3e8a34
7 changed files with 669 additions and 225 deletions

View File

@@ -9,36 +9,40 @@
<!-- 拨打电话 -->
<uses-permission android:name="android.permission.CALL_PHONE"/>
<!-- 读取手机状态和身份 -->
<!-- 读取手机状态和身份API 30+ 需细化权限) -->
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_NUMBERS"/>
<!-- 修改系统设置 -->
<!-- 修改系统设置(移除无效的 protectionLevel 声明,该属性由系统定义) -->
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<!-- 重新设置外拨电话的路径 -->
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
<!-- 读取联系人 -->
<!-- 联系人权限(适配 Android 13+ 细分权限) -->
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<!-- 修改您的通讯录 -->
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.GET_CONTACTS"/>
<!-- 此应用可显示在其他应用上方 -->
<!-- 悬浮窗权限(需动态申请) -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<!-- 更改您的音频设置 -->
<!-- 更改音频设置 -->
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<!-- 读取通话记录 -->
<!-- 通话记录权限(适配 Android 13+ 细分权限) -->
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
<uses-permission android:name="android.permission.GET_CALL_LOG"/>
<!-- 录音 -->
<!-- 录音权限 -->
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<!-- 前台服务权限 -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
<!-- 前台服务权限(按业务类型声明) -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE"/>
<!-- API 30+ 通话筛选服务权限(替代 PROCESS_OUTGOING_CALLS -->
<uses-permission android:name="android.permission.BIND_CALL_SCREENING_SERVICE"/>
<application
android:name=".App"
@@ -55,11 +59,8 @@
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
@@ -69,7 +70,6 @@
android:label="CallActivity"
android:launchMode="singleTask"
android:exported="true">
</activity>
<activity
@@ -78,41 +78,35 @@
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.DIAL"/>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="tel"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.DIAL"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:name="cc.winboll.studio.contacts.activities.SettingsActivity"/>
<service
android:name=".services.MainService"
android:foregroundServiceType="dataSync|phoneCall"
android:exported="false" />
<!-- 主服务:仅 dataSync 类型(与代码中 0x00000008 匹配) -->
<service
android:name=".services.MainService"
android:foregroundServiceType="dataSync"
android:exported="false" />
<service
android:name=".services.AssistantService"
android:foregroundServiceType="dataSync"
android:exported="false" />
<!-- 辅助服务dataSync + microphone 类型(适配录音业务) -->
<service
android:name=".services.AssistantService"
android:foregroundServiceType="dataSync|microphone"
android:exported="false" />
<!-- 通话UI服务系统绑定 -->
<service
android:name=".phonecallui.PhoneCallService"
android:permission="android.permission.BIND_INCALL_SERVICE"
@@ -123,34 +117,37 @@
android:value="true"/>
<intent-filter>
<action android:name="android.telecom.InCallService"/>
</intent-filter>
</service>
<!-- 通话监听服务phoneCall 类型(与代码中 0x00000020 匹配) -->
<service
android:name=".listenphonecall.CallListenerService"
android:enabled="true"
android:exported="false">
android:exported="false"
android:foregroundServiceType="phoneCall">
<intent-filter android:priority="1000">
<action android:name=".service.CallShowService"/>
</intent-filter>
</service>
<!-- API 30+ 通话筛选服务(替代 PROCESS_OUTGOING_CALLS 权限) -->
<service
android:name=".services.MyCallScreeningService"
android:permission="android.permission.BIND_CALL_SCREENING_SERVICE"
android:exported="true">
<intent-filter>
<action android:name="android.telecom.CallScreeningService"/>
</intent-filter>
</service>
<receiver android:name=".receivers.MainReceiver">
<intent-filter>
<action android:name="cc.winboll.studio.contacts.receivers.MainReceiver"/>
</intent-filter>
</receiver>
<receiver
@@ -158,13 +155,9 @@
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
<action android:name="cc.winboll.studio.contacts.widgets.APPStatusWidget.ACTION_STATUS_ACTIVE"/>
<action android:name="cc.winboll.studio.contacts.widgets.APPStatusWidget.ACTION_STATUS_NOACTIVE"/>
</intent-filter>
<meta-data
@@ -174,13 +167,9 @@
</receiver>
<receiver android:name=".widgets.APPStatusWidgetClickListener">
<intent-filter>
<action android:name="cc.winboll.studio.contacts.widgets.APPStatusWidgetClickListener.ACTION_APPICON_CLICK"/>
</intent-filter>
</receiver>
<provider
@@ -202,3 +191,4 @@
</application>
</manifest>