Recently Written · git

subread-overlay

Shows the lines of an .srt over any Android media player, in time with it. Tap a word to look it up.

git clone https://github.com/equwal/subread-overlay

Log | Files | Refs


app/src/main/AndroidManifest.xml (2435 bytes)

1 <?xml version="1.0" encoding="utf-8"?>
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3     xmlns:tools="http://schemas.android.com/tools">
4 
5     <!-- The subtitle line is drawn over the media player. No network permission: nothing leaves the device. -->
6     <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
7 
8     <!-- The apps that can take a word: dictionaries, translators, flash card apps. And the SubRead app, to open it when it is installed. -->
9     <queries>
10         <package android:name="space.subread.app" />
11         <intent>
12             <action android:name="android.intent.action.PROCESS_TEXT" />
13             <data android:mimeType="text/plain" />
14         </intent>
15     </queries>
16 
17     <application
18         android:allowBackup="true"
19         android:icon="@drawable/icon"
20         android:label="@string/app_name"
21         android:supportsRtl="true"
22         android:theme="@android:style/Theme.DeviceDefault.Light.NoActionBar">
23 
24         <activity
25             android:name=".MainActivity"
26             android:exported="true">
27             <intent-filter>
28                 <action android:name="android.intent.action.MAIN" />
29                 <category android:name="android.intent.category.LAUNCHER" />
30             </intent-filter>
31         </activity>
32 
33         <!--
34             Android gives the play position of other apps only to a notification listener.
35             This service reads no notification. The system keeps it running, so the overlay
36             needs no foreground service and no notification of its own.
37         -->
38         <!--
39             Gives the position of the player to a reader app, and takes play, pause and seek from
40             it. KOReader with the SubRead plugin uses this. See PlayerProvider.
41         -->
42         <provider
43             android:name=".PlayerProvider"
44             android:authorities="${applicationId}.player"
45             android:exported="true"
46             tools:ignore="ExportedContentProvider" />
47 
48         <service
49             android:name=".MediaListener"
50             android:exported="true"
51             android:label="@string/listener_label"
52             android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
53             <intent-filter>
54                 <action android:name="android.service.notification.NotificationListenerService" />
55             </intent-filter>
56         </service>
57     </application>
58 </manifest>