Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0d6fa7da authored by Mohit Mali's avatar Mohit Mali Committed by Romain Hunault
Browse files

Use content provider to let Apps know when microG EN is uninstalled

parent dbe0bc45
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -87,6 +87,8 @@
    <uses-permission android:name="android.permission.READ_PRINT_SERVICES" />
    <uses-permission android:name="android.permission.NETWORK_SETTINGS" />

    <uses-permission android:name="foundation.e.apps.micro.status.READ_WRITE" />

    <application android:label="@string/settings_label"
            android:icon="@mipmap/ic_launcher"
            android:taskAffinity=""
+26 −0
Original line number Diff line number Diff line
@@ -112,6 +112,10 @@ import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import android.database.Cursor;
import android.net.Uri;
import android.content.ContentValues;


/**
 * Activity to display application information from Settings. This activity presents
@@ -551,6 +555,14 @@ public class InstalledAppDetails extends AppInfoBase
        switch (requestCode) {
            case REQUEST_UNINSTALL:
                // Refresh option menu
                if (mAppEntry.info.packageName.equals("com.google.android.gms")){
                    if (retrieveStatus(getActivity())!=null){
                        ContentValues values = new ContentValues();
                        values.put("installStatus","false");
                      getContentResolver().update(Uri.parse("content://foundation.e.apps.micro.status/cte"), values,  "id=?",
                                new String[]{"1"});
                    }
                }
                getActivity().invalidateOptionsMenu();

                if (mDisableAfterUninstall) {
@@ -570,6 +582,20 @@ public class InstalledAppDetails extends AppInfoBase
        }
    }

    public  String retrieveStatus(Context context) {
        String status = null;
        Cursor c = context.getContentResolver().query(Uri.parse("content://foundation.e.apps.micro.status/cte"), null, "id=?", new String[]{"1"}, "installStatus");
        if (c.moveToFirst()) {
            do {
                status = c.getString(c.getColumnIndex("installStatus"));
                android.util.Log.e("TAG", "retrieveStatus: " + c.getString(c.getColumnIndex("installStatus")));
            } while (c.moveToNext());
        }
        c.close();
        return status;
    }


    @Override
    public Loader<AppStorageStats> onCreateLoader(int id, Bundle args) {
        Context context = getContext();