InstalledAppProvider: use Android sematics for query methods

Throughout Android, a null projection means return the full record.  This
is well documented.

Also, null sortOrder means use default sort order.
This commit is contained in:
Hans-Christoph Steiner 2019-06-03 15:35:09 +02:00
parent 4c352aeadc
commit 89140d5334
2 changed files with 8 additions and 15 deletions

View File

@ -30,7 +30,6 @@ import org.fdroid.fdroid.R;
import org.fdroid.fdroid.data.InstalledAppProvider;
import org.fdroid.fdroid.data.Schema.InstalledAppTable;
import org.fdroid.fdroid.localrepo.LocalRepoService;
import org.fdroid.fdroid.localrepo.SwapService;
import org.fdroid.fdroid.localrepo.SwapView;
public class SelectAppsView extends SwapView implements LoaderManager.LoaderCallbacks<Cursor> {
@ -61,7 +60,7 @@ public class SelectAppsView extends SwapView implements LoaderManager.LoaderCall
listView = findViewById(R.id.list);
adapter = new AppListAdapter(listView, getContext(),
getContext().getContentResolver().query(InstalledAppProvider.getContentUri(),
InstalledAppTable.Cols.ALL, null, null, null));
null, null, null, null));
listView.setAdapter(adapter);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
@ -97,13 +96,7 @@ public class SelectAppsView extends SwapView implements LoaderManager.LoaderCall
} else {
uri = InstalledAppProvider.getSearchUri(currentFilterString);
}
return new CursorLoader(
getActivity(),
uri,
InstalledAppTable.Cols.ALL,
null,
null,
InstalledAppTable.Cols.APPLICATION_LABEL);
return new CursorLoader(getActivity(), uri, null, null, null, null);
}
@Override

View File

@ -37,8 +37,7 @@ public class InstalledAppProvider extends FDroidProvider {
Map<String, Long> cachedInfo = new HashMap<>();
final Uri uri = InstalledAppProvider.getContentUri();
final String[] projection = Cols.ALL;
Cursor cursor = context.getContentResolver().query(uri, projection, null, null, null);
Cursor cursor = context.getContentResolver().query(uri, null, null, null, null);
if (cursor != null) {
if (cursor.getCount() > 0) {
cursor.moveToFirst();
@ -58,7 +57,7 @@ public class InstalledAppProvider extends FDroidProvider {
@Nullable
public static InstalledApp findByPackageName(Context context, String packageName) {
Cursor cursor = context.getContentResolver().query(getAppUri(packageName), Cols.ALL, null, null, null);
Cursor cursor = context.getContentResolver().query(getAppUri(packageName), null, null, null, null);
if (cursor == null) {
return null;
}
@ -249,9 +248,10 @@ public class InstalledAppProvider extends FDroidProvider {
}
QueryBuilder query = new QueryBuilder();
query.addFields(projection);
if (projection.length == 0) {
query.addField(Cols._ID);
if (projection == null || projection.length == 0) {
query.addFields(Cols.ALL);
} else {
query.addFields(projection);
}
query.addSelection(selection);
query.addOrderBy(sortOrder);