259 lines
8.0 KiB
XML
259 lines
8.0 KiB
XML
<?xml version='1.0' encoding='utf-8'?>
|
|
<manifest
|
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
package="cc.winboll.studio.contacts">
|
|
|
|
<!-- BIND_AUTOFILL_SERVICE -->
|
|
<uses-permission android:name="android.permission.BIND_AUTOFILL_SERVICE"/>
|
|
|
|
<!-- 拨打电话 -->
|
|
<uses-permission android:name="android.permission.CALL_PHONE"/>
|
|
|
|
<!-- 读取手机状态和身份 -->
|
|
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
|
|
|
|
<!-- 读取电话号码 -->
|
|
<uses-permission android:name="android.permission.READ_PHONE_NUMBERS"/>
|
|
|
|
<!-- 修改系统设置 -->
|
|
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
|
|
|
|
<!-- 读取联系人 -->
|
|
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
|
|
|
<!-- 修改您的通讯录 -->
|
|
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
|
|
|
|
<!-- GET_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"/>
|
|
|
|
<!-- 读取通话记录 -->
|
|
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
|
|
|
|
<!-- 新建/修改/删除通话记录 -->
|
|
<uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
|
|
|
|
<!-- GET_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"/>
|
|
|
|
<!-- 运行“dataSync”类型的前台服务 -->
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC"/>
|
|
|
|
<!-- 运行“phoneCall”类型的前台服务 -->
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL"/>
|
|
|
|
<!-- 运行“microphone”类型的前台服务 -->
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE"/>
|
|
|
|
<!-- BIND_CALL_SCREENING_SERVICE -->
|
|
<uses-permission android:name="android.permission.BIND_CALL_SCREENING_SERVICE"/>
|
|
|
|
<!-- 读取您共享存储空间中的内容 -->
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
|
|
|
<!-- 修改或删除您共享存储空间中的内容 -->
|
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
|
|
|
<!-- MANAGE_EXTERNAL_STORAGE -->
|
|
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
|
|
|
|
<application
|
|
android:name=".App"
|
|
android:allowBackup="true"
|
|
android:icon="@drawable/ic_winboll"
|
|
android:label="@string/app_name"
|
|
android:theme="@style/MyAppTheme"
|
|
android:requestLegacyExternalStorage="true"
|
|
android:supportsRtl="true"
|
|
android:networkSecurityConfig="@xml/network_security_config">
|
|
|
|
<activity
|
|
android:name=".MainActivity"
|
|
android:label="@string/app_name"
|
|
android:exported="true">
|
|
|
|
<intent-filter>
|
|
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
|
|
<category android:name="android.intent.category.LAUNCHER"/>
|
|
|
|
</intent-filter>
|
|
|
|
</activity>
|
|
|
|
<activity
|
|
android:name=".activities.CallActivity"
|
|
android:label="CallActivity"
|
|
android:launchMode="singleTask"
|
|
android:exported="true">
|
|
|
|
</activity>
|
|
|
|
<activity
|
|
android:name=".phonecallui.PhoneCallActivity"
|
|
android:launchMode="singleTask"
|
|
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"
|
|
android:exported="false"
|
|
android:stopWithTask="false"/>
|
|
|
|
<service
|
|
android:name=".services.AssistantService"
|
|
android:exported="false"
|
|
android:stopWithTask="false"/>
|
|
|
|
<service
|
|
android:name=".phonecallui.PhoneCallService"
|
|
android:permission="android.permission.BIND_INCALL_SERVICE"
|
|
android:exported="false"
|
|
android:stopWithTask="false">
|
|
|
|
<meta-data
|
|
android:name="android.telecom.IN_CALL_SERVICE_UI"
|
|
android:value="true"/>
|
|
|
|
<intent-filter>
|
|
|
|
<action android:name="android.telecom.InCallService"/>
|
|
|
|
</intent-filter>
|
|
|
|
</service>
|
|
|
|
<service
|
|
android:name=".listenphonecall.CallListenerService"
|
|
android:enabled="true"
|
|
android:exported="false"
|
|
android:stopWithTask="false">
|
|
|
|
<intent-filter android:priority="1000">
|
|
|
|
<action android:name=".service.CallShowService"/>
|
|
|
|
</intent-filter>
|
|
|
|
</service>
|
|
|
|
<service
|
|
android:name=".services.MyCallScreeningService"
|
|
android:permission="android.permission.BIND_CALL_SCREENING_SERVICE"
|
|
android:exported="true"
|
|
android:stopWithTask="false">
|
|
|
|
<intent-filter>
|
|
|
|
<action android:name="android.telecom.CallScreeningService"/>
|
|
|
|
</intent-filter>
|
|
|
|
</service>
|
|
|
|
<receiver
|
|
android:name=".receivers.MainReceiver"
|
|
android:stopWithTask="false">
|
|
|
|
<intent-filter>
|
|
|
|
<action android:name="cc.winboll.studio.contacts.receivers.MainReceiver"/>
|
|
|
|
</intent-filter>
|
|
|
|
</receiver>
|
|
|
|
<receiver
|
|
android:name=".widgets.APPStatusWidget"
|
|
android:exported="true"
|
|
android:stopWithTask="false">
|
|
|
|
<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
|
|
android:name="android.appwidget.provider"
|
|
android:resource="@xml/appwidget_provider_info"/>
|
|
|
|
</receiver>
|
|
|
|
<receiver
|
|
android:name=".widgets.APPStatusWidgetClickListener"
|
|
android:stopWithTask="false">
|
|
|
|
<intent-filter>
|
|
|
|
<action android:name="cc.winboll.studio.contacts.widgets.APPStatusWidgetClickListener.ACTION_APPICON_CLICK"/>
|
|
|
|
</intent-filter>
|
|
|
|
</receiver>
|
|
|
|
<provider
|
|
android:name="androidx.core.content.FileProvider"
|
|
android:authorities="${applicationId}.fileprovider"
|
|
android:exported="false"
|
|
android:grantUriPermissions="true">
|
|
|
|
<meta-data
|
|
android:name="android.support.FILE_PROVIDER_PATHS"
|
|
android:resource="@xml/file_provider"/>
|
|
|
|
</provider>
|
|
|
|
<activity android:name="cc.winboll.studio.contacts.activities.UnitTestActivity"/>
|
|
|
|
<activity android:name="cc.winboll.studio.contacts.activities.AboutActivity"/>
|
|
|
|
<service android:name="cc.winboll.studio.contacts.services.LimitedTimeSpecialChannelService"/>
|
|
|
|
</application>
|
|
|
|
</manifest>
|