Skip to content

Commit 9e191ac

Browse files
committed
Merge branch 'develop' into bugfix/issue_1385
2 parents 8aa7102 + 7a2f581 commit 9e191ac

63 files changed

Lines changed: 2765 additions & 1487 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.

android/hello_sdl_android/src/main/java/com/sdl/hellosdlandroid/SdlService.java

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import android.util.Log;
1313

1414
import com.smartdevicelink.managers.CompletionListener;
15+
import com.smartdevicelink.managers.screen.OnButtonListener;
1516
import com.smartdevicelink.managers.SdlManager;
1617
import com.smartdevicelink.managers.SdlManagerListener;
1718
import com.smartdevicelink.managers.file.filetypes.SdlArtwork;
@@ -27,9 +28,12 @@
2728
import com.smartdevicelink.proxy.RPCNotification;
2829
import com.smartdevicelink.proxy.TTSChunkFactory;
2930
import com.smartdevicelink.proxy.rpc.Alert;
31+
import com.smartdevicelink.proxy.rpc.OnButtonEvent;
32+
import com.smartdevicelink.proxy.rpc.OnButtonPress;
3033
import com.smartdevicelink.proxy.rpc.OnHMIStatus;
3134
import com.smartdevicelink.proxy.rpc.Speak;
3235
import com.smartdevicelink.proxy.rpc.enums.AppHMIType;
36+
import com.smartdevicelink.proxy.rpc.enums.ButtonName;
3337
import com.smartdevicelink.proxy.rpc.enums.FileType;
3438
import com.smartdevicelink.proxy.rpc.enums.HMILevel;
3539
import com.smartdevicelink.proxy.rpc.enums.InteractionMode;
@@ -183,6 +187,7 @@ public void onNotified(RPCNotification notification) {
183187
performWelcomeSpeak();
184188
performWelcomeShow();
185189
preloadChoices();
190+
subscribeToButtons();
186191
}
187192
}
188193
});
@@ -370,6 +375,36 @@ public void onComplete(boolean success) {
370375
});
371376
}
372377

378+
/**
379+
* Attempts to Subscribe to all preset buttons
380+
*/
381+
private void subscribeToButtons() {
382+
ButtonName[] buttonNames = {ButtonName.PLAY_PAUSE, ButtonName.SEEKLEFT, ButtonName.SEEKRIGHT, ButtonName.AC_MAX, ButtonName.AC, ButtonName.RECIRCULATE,
383+
ButtonName.FAN_UP, ButtonName.FAN_DOWN, ButtonName.TEMP_UP, ButtonName.TEMP_DOWN, ButtonName.FAN_DOWN, ButtonName.DEFROST_MAX, ButtonName.DEFROST_REAR, ButtonName.DEFROST,
384+
ButtonName.UPPER_VENT, ButtonName.LOWER_VENT, ButtonName.VOLUME_UP, ButtonName.VOLUME_DOWN, ButtonName.EJECT, ButtonName.SOURCE, ButtonName.SHUFFLE, ButtonName.REPEAT};
385+
386+
OnButtonListener onButtonListener = new OnButtonListener() {
387+
@Override
388+
public void onPress(ButtonName buttonName, OnButtonPress buttonPress) {
389+
sdlManager.getScreenManager().setTextField1(buttonName + " pressed");
390+
}
391+
392+
@Override
393+
public void onEvent(ButtonName buttonName, OnButtonEvent buttonEvent) {
394+
sdlManager.getScreenManager().setTextField2(buttonName + " " + buttonEvent.getButtonEventMode());
395+
}
396+
397+
@Override
398+
public void onError(String info) {
399+
Log.i(TAG, "onError: " + info);
400+
}
401+
};
402+
403+
for (ButtonName buttonName : buttonNames) {
404+
sdlManager.getScreenManager().addButtonListener(buttonName, onButtonListener);
405+
}
406+
}
407+
373408
/**
374409
* Will show a sample test message on screen as well as speak a sample test message
375410
*/

android/sdl_android/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ task buildWindowSymLinks(type:Exec){
5656
dependencies {
5757
api fileTree(dir: 'libs', include: ['*.jar'])
5858
api 'com.smartdevicelink:bson_java_port:1.2.0'
59+
api 'com.livio.taskmaster:taskmaster:0.3.0'
5960
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
6061
exclude group: 'com.android.support', module: 'support-annotations'
6162
})

android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/SdlManagerTests.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.content.Context;
44
import android.support.test.runner.AndroidJUnit4;
55

6+
import com.livio.taskmaster.Taskmaster;
67
import com.smartdevicelink.managers.lifecycle.LifecycleConfigurationUpdate;
78
import com.smartdevicelink.managers.lockscreen.LockScreenConfig;
89
import com.smartdevicelink.protocol.enums.FunctionID;
@@ -42,6 +43,7 @@
4243
import static org.mockito.ArgumentMatchers.any;
4344
import static org.mockito.Mockito.doAnswer;
4445
import static org.mockito.Mockito.mock;
46+
import static org.mockito.Mockito.when;
4547

4648
/**
4749
* This is a unit test class for the SmartDeviceLink library manager class :
@@ -138,6 +140,7 @@ public LifecycleConfigurationUpdate managerShouldUpdateLifecycle(Language langua
138140

139141
// mock internalInterface and set it manually
140142
internalInterface = mock(ISdl.class);
143+
when(internalInterface.getTaskmaster()).thenReturn(new Taskmaster.Builder().build());
141144
manager._internalInterface = internalInterface;
142145

143146
return manager;

android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/screen/ScreenManagerTests.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.smartdevicelink.managers.screen;
22

3+
import com.livio.taskmaster.Taskmaster;
34
import android.support.test.runner.AndroidJUnit4;
45

56
import com.smartdevicelink.managers.BaseSubManager;
@@ -24,6 +25,7 @@
2425
import static junit.framework.TestCase.assertNull;
2526
import static junit.framework.TestCase.assertTrue;
2627
import static org.mockito.Mockito.mock;
28+
import static org.mockito.Mockito.when;
2729

2830
/**
2931
* This is a unit test class for the SmartDeviceLink library manager class :
@@ -37,7 +39,9 @@ public class ScreenManagerTests {
3739
@Before
3840
public void setUp() throws Exception {
3941

42+
4043
ISdl internalInterface = mock(ISdl.class);
44+
when(internalInterface.getTaskmaster()).thenReturn(new Taskmaster.Builder().build());
4145
FileManager fileManager = mock(FileManager.class);
4246
screenManager = new ScreenManager(internalInterface, fileManager);
4347
screenManager.start(null);

0 commit comments

Comments
 (0)