Skip to content

Commit 50df3e6

Browse files
Merge pull request #496 from TakayukiHoshi1984/feature_live_streaming
HostプラグインのSRT対応
2 parents 309c5e0 + 0def862 commit 50df3e6

513 files changed

Lines changed: 41813 additions & 17695 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,30 @@ Device Connect Managerをビルドして、簡単に動作させるまでを解
2424
* Android SDK
2525

2626
## Device Connect Managerのビルド
27-
### Mac/Linux
28-
DeviceConnect-Androidのソースコードをダウンロードしてください。
27+
28+
### ソースコードの取得
29+
30+
git コマンドでソースコードをクローンします。
2931

3032
```
3133
$ git clone https://github.com/DeviceConnect/DeviceConnect-Android.git
3234
```
3335

34-
ビルド前にANDROID_SDK_ROOTの環境変数にAndroidSDKへのパスが設定されていることを確認してください。
36+
### ライブラリのインポート
37+
38+
ビルドには、libmedia-release-1.0.0.aar と libsrt-release-1.0.0.aar が必要になります。<br>
39+
GitHub の releases からダウンロードして、/DeviceConnect-Android/dConnectDevicePlugin/dConnectDeviceHost/app/libs にコピーしてください。
40+
41+
### Mac/Linux でビルド
42+
43+
ビルド前にANDROID\_SDK\_ROOTの環境変数にAndroid SDKへのパスが設定されていることを確認してください。
3544

3645
```
3746
$ echo 'export ANDROID_SDK_ROOT=<path>' >> ~/.bash_profile
3847
```
3948

4049
&lt;path&gt;には、AndroidSDKへのパスを指定してください。
41-
<br><br>
50+
4251
Device Connect Managerをビルドしてapkを作成します。
4352

4453
```
@@ -52,14 +61,9 @@ Device Connect Managerを端末にインストールします。
5261
$ adb install dconnect-manager-app/build/outputs/apk/debug/dconnect-manager-app-debug.apk
5362
```
5463

55-
### Windows
56-
DeviceConnect-Androidのソースコードをダウンロードしてください。
64+
### Windows でビルド
5765

58-
```
59-
> git clone https://github.com/DeviceConnect/DeviceConnect-Android.git
60-
```
61-
62-
ビルド前にANDROID_HOMEの環境変数にAndroidSDKへのパスが設定されていることを確認してください。
66+
ビルド前にANDROID\_HOMEの環境変数にAndroid SDKへのパスが設定されていることを確認してください。
6367

6468
```
6569
> setx ANDROID_HOME <path>
@@ -80,7 +84,6 @@ Device Connect Managerを端末にインストールします。
8084
> adb install app/build/outputs/apk/app-debug.apk
8185
```
8286

83-
8487
## Device Connect Managerの起動
8588
Android端末のアプリケーション一覧画面から、Device Connect Managerのアイコンをタップして、起動します。
8689
<div>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/build
2+
/app/libs/*.aar

dConnectDevicePlugin/dConnectDeviceHost/app/build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ android {
2424
buildConfigField "String", "PACKAGE_NAME", "\"org.deviceconnect.android.deviceplugin.host\""
2525
buildConfigField "String", "DEMO_DIR", "\"demo\""
2626
buildConfigField "String", "DEMO_ZIP", "\"" + DEMO_ZIP_NAME + "\""
27+
buildConfigField "long", "STATS_INTERVAL", "5000L"
2728
}
2829

2930
signingConfigs {
@@ -71,11 +72,11 @@ repositories {
7172
}
7273

7374
dependencies {
74-
implementation fileTree(include: '*.jar', dir: 'libs')
75+
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
76+
implementation "androidx.preference:preference:1.1.0"
77+
implementation 'com.github.pedroSG94.rtmp-rtsp-stream-client-java:rtplibrary:1.6.7'
7578
implementation 'org.deviceconnect:dconnect-device-plugin-sdk:2.8.3'
7679
implementation project(':dconnect-demo-lib')
77-
implementation project(':libstreaming')
78-
implementation 'com.serenegiant:common:2.12.5'
7980
}
8081

8182
task zipDemo(type:Zip) {

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/AndroidManifest.xml

Lines changed: 81 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,126 +1,141 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<manifest
3-
package="org.deviceconnect.android.deviceplugin.host"
4-
xmlns:android="http://schemas.android.com/apk/res/android">
5-
6-
<uses-permission android:name="android.permission.BLUETOOTH"/>
7-
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
8-
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
9-
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
10-
<uses-permission android:name="android.permission.CAMERA"/>
11-
<uses-permission android:name="android.permission.FLASHLIGHT"/>
12-
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
13-
<uses-permission android:name="android.permission.BATTERY_STATS"/>
14-
<uses-permission android:name="android.permission.GET_TASKS"/>
15-
<uses-permission android:name="android.permission.VIBRATE"/>
16-
<uses-permission android:name="android.permission.INTERNET"/>
17-
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
18-
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
19-
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
20-
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION"/>
21-
<uses-permission android:name="android.permission.CALL_PHONE"/>
22-
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
23-
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
24-
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
25-
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
26-
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3+
package="org.deviceconnect.android.deviceplugin.host">
4+
5+
<uses-permission android:name="android.permission.BLUETOOTH" />
6+
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
7+
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
8+
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
9+
<uses-permission android:name="android.permission.CAMERA" />
10+
<uses-permission android:name="android.permission.FLASHLIGHT" />
11+
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
12+
<uses-permission android:name="android.permission.BATTERY_STATS" />
13+
<uses-permission android:name="android.permission.GET_TASKS" />
14+
<uses-permission android:name="android.permission.VIBRATE" />
15+
<uses-permission android:name="android.permission.INTERNET" />
16+
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
17+
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
18+
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
19+
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
20+
<uses-permission android:name="android.permission.CALL_PHONE" />
21+
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
22+
<uses-permission android:name="android.permission.RECORD_AUDIO" />
23+
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
24+
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
25+
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
2726
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
2827
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
2928
<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" />
3029

31-
<uses-feature android:name="android.hardware.camera"/>
32-
<uses-feature android:name="android.hardware.camera.autofocus"/>
33-
<uses-feature android:name="android.hardware.camera.flash"/>
30+
<uses-feature android:name="android.hardware.camera" />
31+
<uses-feature android:name="android.hardware.camera.autofocus" />
32+
<uses-feature android:name="android.hardware.camera.flash" />
3433

35-
<application
36-
android:allowBackup="false">
34+
<application android:allowBackup="false">
3735
<activity
3836
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostSettingActivity"
39-
android:label="@string/app_name_host"
40-
android:theme="@style/AppCompatTheme"
41-
android:launchMode="singleTask">
42-
</activity>
37+
android:launchMode="singleTask"
38+
android:theme="@style/AppCompatTheme" />
39+
4340
<activity
4441
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostGpsSettingActivity"
45-
android:label="@string/app_name_host"
46-
android:theme="@style/AppCompatTheme"
47-
android:launchMode="singleTask">
48-
</activity>
42+
android:exported="false"
43+
android:launchMode="singleTask"
44+
android:theme="@style/AppCompatTheme" />
45+
4946
<activity
5047
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostRecorderSettingActivity"
51-
android:label="@string/app_name_host"
52-
android:theme="@style/AppCompatTheme"
53-
android:launchMode="singleTask">
54-
</activity>
48+
android:exported="false"
49+
android:launchMode="singleTask"
50+
android:theme="@style/AppCompatTheme" />
51+
52+
<activity
53+
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostRecorderAudioSettingActivity"
54+
android:exported="false"
55+
android:launchMode="singleTask"
56+
android:theme="@style/AppCompatTheme" />
57+
58+
<activity
59+
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostRecorderSRTSettingActivity"
60+
android:exported="false"
61+
android:launchMode="singleTask"
62+
android:theme="@style/AppCompatTheme" />
63+
5564
<activity
5665
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostDemoSettingActivity"
57-
android:label="@string/app_name_host"
58-
android:theme="@style/AppCompatTheme"
59-
android:launchMode="singleTask">
60-
</activity>
66+
android:exported="false"
67+
android:launchMode="singleTask"
68+
android:theme="@style/AppCompatTheme" />
69+
6170
<activity
6271
android:name="org.deviceconnect.android.deviceplugin.host.activity.BluetoothManageActivity"
6372
android:excludeFromRecents="true"
6473
android:exported="false"
65-
android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
74+
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
6675

6776
<activity
6877
android:name="org.deviceconnect.android.deviceplugin.host.mediaplayer.VideoPlayer"
69-
android:exported="false"
7078
android:excludeFromRecents="true"
79+
android:exported="false"
7180
android:launchMode="singleInstance"
81+
android:screenOrientation="landscape"
7282
android:taskAffinity=".player"
73-
android:screenOrientation="landscape"/>
83+
android:theme="@style/AppCompatTheme" />
7484

7585
<activity
7686
android:name="org.deviceconnect.android.deviceplugin.host.activity.CanvasProfileActivity"
77-
android:exported="false"
7887
android:configChanges="orientation|keyboardHidden|screenSize"
7988
android:excludeFromRecents="true"
89+
android:exported="false"
8090
android:launchMode="singleInstance"
81-
android:taskAffinity=".canvas"/>
91+
android:taskAffinity=".canvas"
92+
android:theme="@style/AppCompatTheme" />
8293

8394
<activity
8495
android:name="org.deviceconnect.android.deviceplugin.host.activity.TouchProfileActivity"
85-
android:exported="false"
86-
android:label="@string/app_name_host"
8796
android:excludeFromRecents="true"
97+
android:exported="false"
8898
android:launchMode="singleInstance"
89-
android:taskAffinity=".touch"/>
99+
android:taskAffinity=".touch"
100+
android:theme="@style/AppCompatTheme" />
90101

91102
<activity
92103
android:name="org.deviceconnect.android.deviceplugin.host.activity.KeyEventProfileActivity"
93-
android:exported="false"
94-
android:label="@string/app_name_host"
95104
android:excludeFromRecents="true"
105+
android:exported="false"
96106
android:launchMode="singleInstance"
97-
android:taskAffinity=".keyevent"/>
107+
android:taskAffinity=".keyevent"
108+
android:theme="@style/AppCompatTheme" />
98109

99110
<activity
100111
android:name="org.deviceconnect.android.deviceplugin.host.recorder.screen.PermissionReceiverActivity"
112+
android:configChanges="orientation|screenSize"
101113
android:exported="false"
114+
android:theme="@android:style/Theme.Translucent" />
115+
116+
<activity
117+
android:name=".recorder.util.OverlayPermissionActivity"
102118
android:configChanges="orientation|screenSize"
103-
android:label="@string/app_name_host"
104-
android:theme="@android:style/Theme.Translucent"/>
119+
android:exported="false"
120+
android:theme="@style/AppTheme.Translucent" />
105121

106-
<activity android:name="org.deviceconnect.android.deviceplugin.host.activity.GeolocationAlertDialogActivity"
107-
android:label="@string/gps_settings_body"
108-
android:theme="@style/AppTheme.Translucent"
122+
<activity
123+
android:name="org.deviceconnect.android.deviceplugin.host.activity.GeolocationAlertDialogActivity"
109124
android:excludeFromRecents="true"
110-
android:launchMode="singleInstance">
111-
</activity>
125+
android:launchMode="singleInstance"
126+
android:theme="@style/AppTheme.Translucent" />
112127

113128
<!-- パーミッション要求画面 -->
114129
<activity
115130
android:name="org.deviceconnect.android.activity.PermissionRequestActivity"
116131
android:exported="false"
117132
android:taskAffinity=".permission"
118-
android:theme="@style/Theme.Dialog.Transparent"/>
133+
android:theme="@style/Theme.Dialog.Transparent" />
119134

120135
<provider
121136
android:name="org.deviceconnect.android.deviceplugin.host.file.HostFileProvider"
122137
android:authorities="org.deviceconnect.android.deviceplugin.host.provider.included"
123-
android:exported="true" >
138+
android:exported="true">
124139
<meta-data
125140
android:name="filelocation"
126141
android:resource="@xml/host_filelocation" />

0 commit comments

Comments
 (0)