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

Commit 299d19ef authored by Romain Hunault's avatar Romain Hunault 🚴🏻
Browse files

Merge branch 'microg_provider_nougat' into 'v1-nougat'

Implemented code to change micro installation status

See merge request !74
parents bdb50cb0 37b1f6b4
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -107,6 +107,8 @@
    <uses-permission android:name="cyanogenmod.permission.WRITE_SETTINGS" />
    <uses-permission android:name="cyanogenmod.permission.MANAGE_REMOTE_PREFERENCES" />

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

    <application android:label="@string/settings_label"
            android:icon="@mipmap/ic_launcher_settings"
            android:taskAffinity=""
+26 −0
Original line number Diff line number Diff line
@@ -106,6 +106,9 @@ import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import android.database.Cursor;
import android.net.Uri;
import android.content.ContentValues;

import static android.service.notification.NotificationListenerService.Ranking.importanceToLevel;
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
@@ -506,6 +509,16 @@ public class InstalledAppDetails extends AppInfoBase
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
            case REQUEST_UNINSTALL:

                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"});
                    }
                }

                if (mDisableAfterUninstall) {
                    mDisableAfterUninstall = false;
                    new DisableChanger(this, mAppEntry.info,
@@ -533,6 +546,19 @@ 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;
    }

    private class ToggleProtectedAppComponents extends AsyncTask<Void, Void, Void> {
        @Override
        protected void onPostExecute(Void aVoid) {