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

Commit daa8551b authored by Yi Kong's avatar Yi Kong Committed by Automerger Merge Worker
Browse files

Merge "profcollect: Copy report file to BetterBug's internal storage" am: 72468611

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652264

Change-Id: Ibcbf350ca0d1197ffc6ca982845cc8c70ca78385
parents 97517b84 72468611
Loading
Loading
Loading
Loading
+29 −1
Original line number Original line Diff line number Diff line
@@ -30,6 +30,8 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.ServiceManager;
import android.os.UpdateEngine;
import android.os.UpdateEngine;
import android.os.UpdateEngineCallback;
import android.os.UpdateEngineCallback;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.DeviceConfig;
import android.provider.DeviceConfig;
import android.util.Log;
import android.util.Log;


@@ -301,10 +303,18 @@ public final class ProfcollectForwardingService extends SystemService {


        new Thread(() -> {
        new Thread(() -> {
            try {
            try {
                String reportPath = mIProfcollect.report();
                String reportUuid = mIProfcollect.report();

                if (!uploadReport) {
                if (!uploadReport) {
                    return;
                    return;
                }
                }

                final int profileId = getBBProfileId();
                mIProfcollect.copy_report_to_bb(profileId, reportUuid);
                String reportPath =
                        "/data/user/" + profileId
                        + "/com.google.android.apps.internal.betterbug/cache/"
                        + reportUuid + ".zip";
                Intent uploadIntent =
                Intent uploadIntent =
                        new Intent("com.google.android.apps.betterbug.intent.action.UPLOAD_PROFILE")
                        new Intent("com.google.android.apps.betterbug.intent.action.UPLOAD_PROFILE")
                        .setPackage("com.google.android.apps.internal.betterbug")
                        .setPackage("com.google.android.apps.internal.betterbug")
@@ -316,9 +326,27 @@ public final class ProfcollectForwardingService extends SystemService {
                if (context.getPackageManager().queryBroadcastReceivers(uploadIntent, 0) != null) {
                if (context.getPackageManager().queryBroadcastReceivers(uploadIntent, 0) != null) {
                    context.sendBroadcast(uploadIntent);
                    context.sendBroadcast(uploadIntent);
                }
                }
                mIProfcollect.delete_report(reportUuid);
            } catch (RemoteException e) {
            } catch (RemoteException e) {
                Log.e(LOG_TAG, e.getMessage());
                Log.e(LOG_TAG, e.getMessage());
            }
            }
        }).start();
        }).start();
    }
    }

    /**
     * Get BetterBug's profile ID. It is the work profile ID, if it exists. Otherwise the system
     * user ID.
     *
     * @return BetterBug's profile ID.
     */
    private int getBBProfileId() {
        UserManager userManager = UserManager.get(getContext());
        int[] profiles = userManager.getProfileIds(UserHandle.USER_SYSTEM, false);
        for (int p : profiles) {
            if (userManager.getUserInfo(p).isManagedProfile()) {
                return p;
            }
        }
        return UserHandle.USER_SYSTEM;
    }
}
}