Added query for Cleartext Storage in Android Database

This commit is contained in:
Tony Torralba
2021-09-03 12:59:03 +02:00
parent 117795c409
commit f0604e2e84
26 changed files with 611 additions and 10 deletions

View File

@@ -0,0 +1,21 @@
/*
* Copyright (C) 2015 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 android.annotation;
public @interface IntRange {
long from() default Long.MIN_VALUE;
long to() default Long.MAX_VALUE;
}

View File

@@ -101,6 +101,7 @@ abstract public class Context
public abstract String getSystemServiceName(Class<? extends Object> p0);
public abstract String[] databaseList();
public abstract String[] fileList();
<<<<<<< HEAD
public abstract boolean bindService(Intent p0, ServiceConnection p1, int p2);
public abstract boolean bindServiceAsUser(Intent p0, ServiceConnection p1, int p2, UserHandle p3);
public abstract boolean deleteDatabase(String p0);

View File

@@ -15,6 +15,7 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
<<<<<<< HEAD
import android.util.AttributeSet;
import java.io.Serializable;
import java.util.ArrayList;

View File

@@ -0,0 +1,46 @@
package android.database;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.os.ParcelFileDescriptor;
public class DatabaseUtils {
public static ParcelFileDescriptor blobFileDescriptorForQuery(SQLiteDatabase db, String query,
String[] selectionArgs) {
return null;
}
public static long longForQuery(SQLiteDatabase db, String query, String[] selectionArgs) {
return 0;
}
public static String stringForQuery(SQLiteDatabase db, String query, String[] selectionArgs) {
return null;
}
public static void createDbFromSqlStatements(Context context, String dbName, int dbVersion, String sqlStatements) {
}
public static int queryNumEntries(SQLiteDatabase db, String table, String selection) {
return 0;
}
public static int queryNumEntries(SQLiteDatabase db, String table, String selection, String[] selectionArgs) {
return 0;
}
public static String[] appendSelectionArgs(String[] originalValues, String[] newValues) {
return null;
}
public static String concatenateWhere(String a, String b) {
return null;
}
}

View File

@@ -0,0 +1,29 @@
/*
* Copyright (C) 2006 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 android.database;
public class SQLException extends RuntimeException {
public SQLException() {
}
public SQLException(String error) {
}
public SQLException(String error, Throwable cause) {
}
}

View File

@@ -1,3 +1,4 @@
<<<<<<< HEAD
// Generated automatically from android.database.sqlite.SQLiteDatabase for testing purposes
package android.database.sqlite;

View File

@@ -0,0 +1,30 @@
/*
* Copyright (C) 2006 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 android.database.sqlite;
import android.database.SQLException;
public class SQLiteException extends SQLException {
public SQLiteException() {
}
public SQLiteException(String error) {
}
public SQLiteException(String error, Throwable cause) {
}
}

View File

@@ -0,0 +1,57 @@
package android.database.sqlite;
import java.util.Map;
import java.util.Set;
import android.content.ContentValues;
import android.os.CancellationSignal;
public abstract class SQLiteQueryBuilder {
public abstract void delete(SQLiteDatabase db, String selection, String[] selectionArgs);
public abstract void insert(SQLiteDatabase db, ContentValues values);
public abstract void query(SQLiteDatabase db, String[] projectionIn, String selection, String[] selectionArgs,
String groupBy, String having, String sortOrder);
public abstract void query(SQLiteDatabase db, String[] projectionIn, String selection, String[] selectionArgs,
String groupBy, String having, String sortOrder, String limit);
public abstract void query(SQLiteDatabase db, String[] projectionIn, String selection, String[] selectionArgs,
String groupBy, String having, String sortOrder, String limit, CancellationSignal cancellationSignal);
public abstract void update(SQLiteDatabase db, ContentValues values, String selection, String[] selectionArgs);
public static String buildQueryString(boolean distinct, String tables, String[] columns, String where,
String groupBy, String having, String orderBy, String limit) {
return null;
}
public abstract String buildQuery(String[] projectionIn, String selection, String groupBy, String having, String sortOrder,
String limit);
public abstract String buildQuery(String[] projectionIn, String selection, String[] selectionArgs, String groupBy,
String having, String sortOrder, String limit);
public abstract String buildUnionQuery(String[] subQueries, String sortOrder, String limit);
public abstract String buildUnionSubQuery(String typeDiscriminatorColumn, String[] unionColumns,
Set<String> columnsPresentInTable, int computedColumnsOffset, String typeDiscriminatorValue,
String selection, String[] selectionArgs, String groupBy, String having);
public abstract String buildUnionSubQuery(String typeDiscriminatorColumn, String[] unionColumns,
Set<String> columnsPresentInTable, int computedColumnsOffset, String typeDiscriminatorValue,
String selection, String groupBy, String having);
public static void appendColumns(StringBuilder s, String[] columns) {
}
public abstract void setProjectionMap(Map<String, String> columnMap);
public abstract void setTables(String inTables);
public abstract void appendWhere(CharSequence inWhere);
public abstract void appendWhereStandalone(CharSequence inWhere);
}

View File

@@ -12,6 +12,7 @@ import android.util.SizeF;
import android.util.SparseArray;
import java.io.Serializable;
import java.util.ArrayList;
<<<<<<< HEAD
public class Bundle extends BaseBundle implements Cloneable, Parcelable
{

View File

@@ -16,7 +16,6 @@
package android.webkit;
import java.io.InputStream;
import java.io.StringBufferInputStream;
import java.util.Map;
/**

View File

@@ -15,11 +15,8 @@
*/
package android.webkit;
import java.net.CookieManager;
import android.content.Context;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Manages settings state for a WebView. When a WebView is first created, it

View File

@@ -18,6 +18,7 @@ import android.content.Context;
import android.view.View;
public class WebView extends View {
public WebView(Context context) {
super(context);
}

View File

@@ -15,9 +15,6 @@
*/
package android.webkit;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
public class WebViewClient {
/**
* Give the host application a chance to take over the control when a new url is