Load suggestions through SettingsIntelligence.
- Add flag to switch between old/new implementation - Add SuggestionLoader to load using Loader (instead of AsyncTask) - Update DashboardAdapater/SuggestionAdapter to take List<Suggestion> - Marked old getter/setters as @Deprecated and added comment - Update tests to cover suggestionV2 adapter changes. TODO: - Handler for dismissing suggestion not set up yet. - Suggestion data structure is incomplete (missing icon, remote view, etc) - Need to extend Suggestion data strcture to support icon and remote view binding Bug: 65065268 Test: robotests Change-Id: I2378ef4c9edee972d5de93c3868068e2cde23f56
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.settings.dashboard.suggestions;
|
||||
|
||||
import android.content.Context;
|
||||
import android.service.settings.suggestions.Suggestion;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.settings.utils.AsyncLoader;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SuggestionLoader extends AsyncLoader<List<Suggestion>> {
|
||||
|
||||
public static final int LOADER_ID_SUGGESTIONS = 42;
|
||||
private static final String TAG = "SuggestionLoader";
|
||||
|
||||
private final SuggestionController mSuggestionController;
|
||||
|
||||
public SuggestionLoader(Context context, SuggestionController controller) {
|
||||
super(context);
|
||||
mSuggestionController = controller;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDiscardResult(List<Suggestion> result) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Suggestion> loadInBackground() {
|
||||
final List<Suggestion> data = mSuggestionController.getSuggestions();
|
||||
if (data == null) {
|
||||
Log.d(TAG, "data is null");
|
||||
} else {
|
||||
Log.d(TAG, "data size " + data.size());
|
||||
}
|
||||
return data;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user