mirror of
https://github.com/oliexdev/openScale.git
synced 2025-08-18 22:41:44 +02:00
Add option to enable third-party application access
Defaults to off. Needs to be enabled for the data provider to return data.
This commit is contained in:
@@ -22,6 +22,7 @@ import android.content.UriMatcher;
|
||||
import android.database.Cursor;
|
||||
import android.database.MatrixCursor;
|
||||
import android.net.Uri;
|
||||
import android.preference.PreferenceManager;
|
||||
|
||||
import com.health.openscale.BuildConfig;
|
||||
import com.health.openscale.core.OpenScale;
|
||||
@@ -86,6 +87,12 @@ public class ScaleDatabaseProvider extends android.content.ContentProvider {
|
||||
public Cursor query(Uri uri, String[] projection, String selection,
|
||||
String[] selectionArgs, String sortOrder) {
|
||||
final Context context = getContext();
|
||||
|
||||
if (!PreferenceManager.getDefaultSharedPreferences(context)
|
||||
.getBoolean("dataProviderEnable", false)) {
|
||||
throw new UnsupportedOperationException("Provider access not enabled");
|
||||
}
|
||||
|
||||
Cursor cursor;
|
||||
|
||||
switch (uriMatcher.match(uri)) {
|
||||
|
@@ -243,4 +243,5 @@
|
||||
<string name="activity_level_moderate">Moderate</string>
|
||||
<string name="activity_level_heavy">Heavy</string>
|
||||
<string name="activity_level_extreme">Extreme</string>
|
||||
<string name="label_data_provider_enable">Third-party application access</string>
|
||||
</resources>
|
||||
|
@@ -23,4 +23,10 @@
|
||||
android:summaryOff="@string/info_is_not_enable"
|
||||
android:summaryOn="@string/info_is_enable"
|
||||
android:title="@string/label_delete_confirmation" />
|
||||
<CheckBoxPreference
|
||||
android:defaultValue="false"
|
||||
android:key="dataProviderEnable"
|
||||
android:summaryOff="@string/info_is_not_enable"
|
||||
android:summaryOn="@string/info_is_enable"
|
||||
android:title="@string/label_data_provider_enable" />
|
||||
</PreferenceScreen>
|
Reference in New Issue
Block a user