Skip to content

Commit ab91cca

Browse files
Merge pull request #716 from TakayukiHoshi1984/feature_host_plugin_update
Feature host plugin update
2 parents f9e7447 + a65bfc9 commit ab91cca

132 files changed

Lines changed: 10091 additions & 6127 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.

dConnectDevicePlugin/dConnectDeviceHost/app/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ android {
3333
buildConfigField "String", "DEMO_DIR", "\"demo\""
3434
buildConfigField "String", "DEMO_ZIP", "\"" + DEMO_ZIP_NAME + "\""
3535
buildConfigField "long", "STATS_INTERVAL", "5000L"
36-
}
36+
}
3737

3838
signingConfigs {
3939
releaseConfig {
@@ -103,8 +103,8 @@ dependencies {
103103
implementation 'com.github.pedroSG94.rtmp-rtsp-stream-client-java:rtplibrary:1.9.7'
104104
implementation 'org.deviceconnect:dconnect-device-plugin-sdk:2.8.6'
105105
implementation 'org.deviceconnect:dconnect-demo-lib:1.0.1'
106-
implementation 'org.deviceconnect:libmedia:1.2.2'
107-
implementation 'org.deviceconnect:libsrt:1.2.2'
106+
implementation 'org.deviceconnect:libmedia:1.3.0'
107+
implementation 'org.deviceconnect:libsrt:1.3.0'
108108
// implementation project(':libmedia')
109109
// implementation project(':libsrt')
110110
}

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,15 @@
112112
android:name="org.deviceconnect.android.deviceplugin.host.setting.HostSettingActivity"
113113
android:exported="false"
114114
android:launchMode="singleTask"
115+
android:taskAffinity=".settings"
115116
android:theme="@style/AppCompatTheme" />
116117

117118
<!-- レコーダー設定画面用の Activity -->
118119
<activity
119120
android:name=".activity.recorder.settings.SettingsActivity"
120121
android:configChanges="keyboardHidden|orientation|screenSize"
121122
android:exported="false"
123+
android:taskAffinity=".recorder_settings"
122124
android:theme="@style/AppCompatTheme" />
123125

124126
<!-- プラグイン本体サービス -->

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/assets/org_deviceconnect_android_deviceplugin_host/api/mediaStreamRecording.json

Lines changed: 1870 additions & 1842 deletions
Large diffs are not rendered by default.

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/HostDevicePlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ protected void onKeyStoreUpdated(final KeyStore keyStore, final Certificate cert
311311
}
312312
mSSLContext = createSSLContext(keyStore, DEFAULT_PASSWORD);
313313
} catch (Exception e) {
314-
mLogger.log(Level.SEVERE, "Failed to update keystore", e);
314+
mLogger.log(Level.WARNING, "Failed to update keystore", e);
315315
}
316316
}
317317

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/activity/HostDevicePluginBindActivity.java

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,6 @@ public class HostDevicePluginBindActivity extends AppCompatActivity {
3131
*/
3232
private boolean mIsBound = false;
3333

34-
/**
35-
* 画面の回転固定フラグ.
36-
*/
37-
private boolean mDisplayRotationFixed = false;
38-
3934
@Override
4035
public void onCreate(Bundle savedInstanceState) {
4136
super.onCreate(savedInstanceState);
@@ -179,9 +174,18 @@ public void onServiceDisconnected(ComponentName name) {
179174
* @param fixed 固定する場合はtrue、それ以外はfalse
180175
*/
181176
public void setDisplayRotation(boolean fixed) {
182-
mDisplayRotationFixed = fixed;
177+
setDisplayRotation(fixed, getDisplayOrientation());
178+
}
179+
180+
/**
181+
* 画面に表示されている状態で回転を固定します.
182+
*
183+
* @param fixed 固定する場合はtrue、それ以外はfalse
184+
* @param orientation 固定する向き
185+
*/
186+
public void setDisplayRotation(boolean fixed, int orientation) {
183187
if (fixed) {
184-
setRequestedOrientation(getDisplayOrientation());
188+
setRequestedOrientation(orientation);
185189
} else {
186190
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
187191
}
@@ -193,14 +197,14 @@ public void setDisplayRotation(boolean fixed) {
193197
* @return 画面が固定されている場合はtrue、それ以外はfalse
194198
*/
195199
public boolean isDisplayRotationFixed() {
196-
return mDisplayRotationFixed;
200+
return getRequestedOrientation() != ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
197201
}
198202

199203
/**
200204
* 画面固定を切り替えます.
201205
*/
202206
public void toggleDisplayRotation() {
203-
setDisplayRotation(!mDisplayRotationFixed);
207+
setDisplayRotation(!isDisplayRotationFixed());
204208
}
205209

206210
/**

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/activity/fragment/AlertDialogFragment.java

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,15 @@ public static AlertDialogFragment create(final String tag, final String title, f
6767
* @return AlertDialogFragmentのインスタンス
6868
*/
6969
public static AlertDialogFragment create(final String tag, final String title, final String message,
70-
final String positive, final String negative) {
70+
final String positive, final String negative) {
71+
Bundle args = createParam(tag, title, message, positive, negative);
72+
AlertDialogFragment dialog = new AlertDialogFragment();
73+
dialog.setArguments(args);
74+
return dialog;
75+
}
76+
77+
public static Bundle createParam(final String tag, final String title, final String message,
78+
final String positive, final String negative) {
7179
Bundle args = new Bundle();
7280
args.putString(KEY_TAG, tag);
7381
args.putString(KEY_TITLE, title);
@@ -78,10 +86,7 @@ public static AlertDialogFragment create(final String tag, final String title, f
7886
if (negative != null) {
7987
args.putString(KEY_NEGATIVE, negative);
8088
}
81-
82-
AlertDialogFragment dialog = new AlertDialogFragment();
83-
dialog.setArguments(args);
84-
return dialog;
89+
return args;
8590
}
8691

8792
@Override

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/activity/recorder/settings/SettingsActivity.java

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@
33
import android.content.Context;
44
import android.content.Intent;
55
import android.content.pm.ActivityInfo;
6+
import android.content.res.Configuration;
67
import android.os.Bundle;
78
import android.view.MenuItem;
89

910
import androidx.appcompat.app.ActionBar;
1011

12+
import org.deviceconnect.android.deviceplugin.host.HostDevicePlugin;
1113
import org.deviceconnect.android.deviceplugin.host.R;
1214
import org.deviceconnect.android.deviceplugin.host.activity.HostDevicePluginBindActivity;
1315
import org.deviceconnect.android.deviceplugin.host.recorder.HostMediaRecorder;
@@ -17,6 +19,7 @@ public class SettingsActivity extends HostDevicePluginBindActivity {
1719
@Override
1820
public void onCreate(Bundle savedInstanceState) {
1921
super.onCreate(savedInstanceState);
22+
setRequestedOrientation(getDisplayOrientation());
2023
setContentView(R.layout.activity_recorder_settings);
2124

2225
ActionBar actionBar = getSupportActionBar();
@@ -27,9 +30,8 @@ public void onCreate(Bundle savedInstanceState) {
2730
}
2831

2932
@Override
30-
public void onStart() {
31-
super.onStart();
32-
setRequestedOrientation(getDisplayOrientation());
33+
public void onConfigurationChanged(Configuration newConfig) {
34+
super.onConfigurationChanged(newConfig);
3335
}
3436

3537
@Override
@@ -60,17 +62,20 @@ public int getDisplayOrientation() {
6062
return ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
6163
}
6264

63-
public HostMediaRecorder getRecorder() {
64-
String recorderId = null;
65+
public String getRecorderId() {
6566
Intent intent = getIntent();
6667
if (intent != null) {
67-
recorderId = intent.getStringExtra("recorder_id");
68+
return intent.getStringExtra("recorder_id");
6869
}
69-
return getHostDevicePlugin().getHostMediaRecorderManager().getRecorder(recorderId);
70+
return null;
7071
}
7172

72-
public String getRecorderId() {
73-
return getRecorder().getId();
73+
public HostMediaRecorder getRecorder() {
74+
HostDevicePlugin plugin = getHostDevicePlugin();
75+
if (plugin != null) {
76+
return plugin.getHostMediaRecorderManager().getRecorder(getRecorderId());
77+
}
78+
return null;
7479
}
7580

7681
public static Intent createSettingsActivityIntent(Context context, String recorderId, Integer rotationFlag) {

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/activity/recorder/settings/SettingsAudioFragment.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,16 @@ public class SettingsAudioFragment extends SettingsParameterFragment {
1717

1818
@Override
1919
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
20-
getPreferenceManager().setSharedPreferencesName(getRecorderId().replaceAll("/", "_"));
20+
getPreferenceManager().setSharedPreferencesName(getRecorderId());
2121
setPreferencesFromResource(R.xml.settings_host_recorder_audio, rootKey);
2222
}
2323

2424
@Override
2525
public void onBindService() {
2626
mMediaRecorder = getRecorder();
27+
if (mMediaRecorder == null) {
28+
return;
29+
}
2730

2831
setPreviewAudioSource(mMediaRecorder.getSettings());
2932
setPreviewSampleRate(mMediaRecorder.getSettings());

dConnectDevicePlugin/dConnectDeviceHost/app/src/main/java/org/deviceconnect/android/deviceplugin/host/activity/recorder/settings/SettingsBaseFragment.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,4 +49,17 @@ public String getRecorderId() {
4949
}
5050
return null;
5151
}
52+
53+
/**
54+
* プレビューサーバ、配信設定ファイル名を取得します.
55+
*
56+
* @return 設定のファイル名
57+
*/
58+
public String getEncoderId() {
59+
Bundle args = getArguments();
60+
if (args != null) {
61+
return args.getString("encoder_id");
62+
}
63+
return null;
64+
}
5265
}

0 commit comments

Comments
 (0)