Skip to content

Commit 05fcb0d

Browse files
author
Douglas Sigelbaum
committed
Update slice API usage to alpha4/beta01.
1 parent 0796fa0 commit 05fcb0d

File tree

7 files changed

+325
-248
lines changed

7 files changed

+325
-248
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ buildscript {
77
jcenter()
88
}
99
dependencies {
10-
classpath 'com.android.tools.build:gradle:3.2.0-alpha18'
10+
classpath 'com.android.tools.build:gradle:3.2.0-beta02'
1111
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1212

1313
// NOTE: Do not place your application dependencies here; they belong

slice/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ dependencies {
3232
implementation project(':shared')
3333
implementation fileTree(dir: 'libs', include: ['*.jar'])
3434
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
35-
implementation "androidx.slice:slice-builders-ktx:1.0.0-alpha3"
36-
implementation "androidx.appcompat:appcompat:1.0.0-alpha3"
37-
implementation "androidx.cardview:cardview:1.0.0-alpha3"
35+
implementation "androidx.slice:slice-builders-ktx:1.0.0-alpha4"
36+
implementation "androidx.appcompat:appcompat:1.0.0-beta01"
37+
implementation "androidx.cardview:cardview:1.0.0-beta01"
3838
testImplementation 'junit:junit:4.12'
3939
}

slice/src/main/AndroidManifest.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
<intent-filter>
2727
<action android:name="androidx.intent.SLICE_ACTION"/>
2828
<category android:name="android.intent.category.DEFAULT"/>
29+
<category android:name="android.app.slice.category.SLICE"/>
2930
<data
3031
android:host="slice.android.example.com"
3132
android:pathPrefix="/"
@@ -39,6 +40,7 @@
3940
<intent-filter>
4041
<action android:name="androidx.intent.SLICE_ACTION"/>
4142
<category android:name="android.intent.category.DEFAULT"/>
43+
<category android:name="android.app.slice.category.SLICE"/>
4244
<data
4345
android:host="slice.android.example.com"
4446
android:pathPrefix="/"
@@ -52,6 +54,7 @@
5254
<intent-filter>
5355
<action android:name="androidx.intent.SLICE_ACTION"/>
5456
<category android:name="android.intent.category.DEFAULT"/>
57+
<category android:name="android.app.slice.category.SLICE"/>
5558
<data
5659
android:host="slice.android.example.com"
5760
android:pathPrefix="/"
@@ -65,6 +68,7 @@
6568
<intent-filter>
6669
<action android:name="androidx.intent.SLICE_ACTION"/>
6770
<category android:name="android.intent.category.DEFAULT"/>
71+
<category android:name="android.app.slice.category.SLICE"/>
6872
<data
6973
android:host="slice.android.example.com"
7074
android:pathPrefix="/"

slice/src/main/java/com/example/android/slice/java/GettingStartedSliceProvider.java

Lines changed: 73 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -40,65 +40,78 @@ public boolean onCreateSliceProvider() {
4040
// [START on_bind_slice]
4141
@Override
4242
public Slice onBindSlice(Uri sliceUri) {
43-
// Create parent ListBuilder.
43+
if (getContext() == null) {
44+
return null;
45+
}
46+
SliceAction activityAction = createActivityAction();
4447
ListBuilder listBuilder = new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY);
45-
46-
// Create RowBuilder.
47-
ListBuilder.RowBuilder rowBuilder = new ListBuilder.RowBuilder(listBuilder);
48-
49-
if (sliceUri.getPath().equals("/hello")) {
50-
rowBuilder.setTitle("URI found.");
48+
// Create parent ListBuilder.
49+
if ("/hello".equals(sliceUri.getPath())) {
50+
listBuilder.addRow(new ListBuilder.RowBuilder()
51+
.setTitle("Hello World")
52+
.setPrimaryAction(activityAction)
53+
);
5154
} else {
52-
rowBuilder.setTitle("URI not found.");
55+
listBuilder.addRow(new ListBuilder.RowBuilder()
56+
.setTitle("URI not recognized")
57+
.setPrimaryAction(activityAction)
58+
);
5359
}
54-
55-
// Add Row to List.
56-
listBuilder.addRow(rowBuilder);
57-
58-
// Build List.
5960
return listBuilder.build();
6061
}
6162
// [END on_bind_slice]
6263

6364
// [START create_slice]
6465
public Slice createSlice(Uri sliceUri) {
66+
if (getContext() == null) {
67+
return null;
68+
}
6569
SliceAction activityAction = createActivityAction();
66-
ListBuilder listBuilder = new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY);
67-
ListBuilder.RowBuilder rowBuilder = new ListBuilder.RowBuilder(listBuilder)
68-
.setTitle("Perform action in app.")
69-
.setPrimaryAction(activityAction);
70-
listBuilder.addRow(rowBuilder);
71-
return listBuilder.build();
70+
return new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY)
71+
.addRow(new ListBuilder.RowBuilder()
72+
.setTitle("Perform action in app.")
73+
.setPrimaryAction(activityAction)
74+
).build();
7275
}
7376

7477
public SliceAction createActivityAction() {
75-
Intent intent = new Intent(getContext(), MainActivity.class);
76-
return new SliceAction(PendingIntent.getActivity(getContext(), 0, intent, 0),
78+
if (getContext() == null) {
79+
return null;
80+
}
81+
return SliceAction.create(
82+
PendingIntent.getActivity(
83+
getContext(),
84+
0,
85+
new Intent(getContext(), MainActivity.class),
86+
0
87+
),
7788
IconCompat.createWithResource(getContext(), R.drawable.ic_home),
78-
"Open MainActivity");
89+
ListBuilder.ICON_IMAGE,
90+
"Enter app"
91+
);
7992
}
8093
// [END create_slice]
8194

8295
// [START create_brightness_slice]
8396
public Slice createBrightnessSlice(Uri sliceUri) {
84-
SliceAction toggleAction = new SliceAction(createToggleIntent(),
85-
"Toggle adaptive brightness", true);
86-
ListBuilder listBuilder = new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY);
87-
ListBuilder.RowBuilder rowBuilder = new ListBuilder.RowBuilder(listBuilder)
88-
.setTitle("Adaptive brightness")
89-
.setSubtitle("Optimizes brightness for available light.")
90-
.setPrimaryAction(toggleAction);
91-
92-
listBuilder.addRow(rowBuilder);
93-
94-
ListBuilder.InputRangeBuilder inputRangeBuilder = new ListBuilder.InputRangeBuilder(
95-
listBuilder)
96-
.setInputAction(brightnessPendingIntent)
97-
.setMax(100)
98-
.setValue(45);
99-
100-
listBuilder.addInputRange(inputRangeBuilder);
101-
97+
if (getContext() == null) {
98+
return null;
99+
}
100+
SliceAction toggleAction = SliceAction.createToggle(
101+
createToggleIntent(),
102+
"Toggle adaptive brightness",
103+
true
104+
);
105+
ListBuilder listBuilder = new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY)
106+
.addRow(new ListBuilder.RowBuilder()
107+
.setTitle("Adaptive brightness")
108+
.setSubtitle("Optimizes brightness for available light.")
109+
.setPrimaryAction(toggleAction)
110+
).addInputRange(new ListBuilder.InputRangeBuilder()
111+
.setInputAction(brightnessPendingIntent)
112+
.setMax(100)
113+
.setValue(45)
114+
);
102115
return listBuilder.build();
103116
}
104117

@@ -110,20 +123,31 @@ public PendingIntent createToggleIntent() {
110123

111124
// [START create_dynamic_slice]
112125
public Slice createDynamicSlice(Uri sliceUri) {
126+
if (getContext() == null || sliceUri.getPath() == null) {
127+
return null;
128+
}
113129
ListBuilder listBuilder = new ListBuilder(getContext(), sliceUri, ListBuilder.INFINITY);
114-
ListBuilder.RowBuilder rowBuilder = new ListBuilder.RowBuilder(listBuilder);
115130
switch (sliceUri.getPath()) {
116131
case "/count":
117-
SliceAction toastAndIncrementAction = new SliceAction(createToastAndIncrementIntent(
118-
"Item clicked."), actionIcon, "Increment.");
119-
rowBuilder.setPrimaryAction(toastAndIncrementAction)
120-
.setTitle("Count: " + MyBroadcastReceiver.sReceivedCount)
121-
.setSubtitle("Click me");
122-
listBuilder.addRow(rowBuilder);
132+
SliceAction toastAndIncrementAction = SliceAction.create(
133+
createToastAndIncrementIntent("Item clicked."),
134+
actionIcon,
135+
ListBuilder.ICON_IMAGE,
136+
"Increment."
137+
);
138+
listBuilder.addRow(
139+
new ListBuilder.RowBuilder()
140+
.setPrimaryAction(toastAndIncrementAction)
141+
.setTitle("Count: " + MyBroadcastReceiver.sReceivedCount)
142+
.setSubtitle("Click me")
143+
);
123144
break;
124145
default:
125-
rowBuilder.setTitle("URI not found.");
126-
listBuilder.addRow(rowBuilder);
146+
listBuilder.addRow(
147+
new ListBuilder.RowBuilder()
148+
.setPrimaryAction(createActivityAction())
149+
.setTitle("URI not found.")
150+
);
127151
break;
128152
}
129153
return listBuilder.build();

0 commit comments

Comments
 (0)