add user manage section

This commit is contained in:
BinTianqi
2024-01-21 20:13:44 +08:00
parent 1f52a8920c
commit 01c0a119a6
12 changed files with 492 additions and 164 deletions

View File

@@ -1,46 +1,13 @@
package com.binbin.androidowner;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.content.IntentSender;
import android.content.pm.PackageInstaller;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import android.os.UserHandle;
import android.os.UserManager;
import java.util.List;
public class Test {
public static void installPackage(Context context, InputStream inputStream)
throws IOException {
PackageInstaller packageInstaller = context.getPackageManager().getPackageInstaller();
int sessionId = packageInstaller.createSession(new PackageInstaller
.SessionParams(PackageInstaller.SessionParams.MODE_FULL_INSTALL));
PackageInstaller.Session session = packageInstaller.openSession(sessionId);
long sizeBytes = 0;
OutputStream out;
out = session.openWrite("my_app_session", 0, sizeBytes);
int total = 0;
byte[] buffer = new byte[65536];
int c;
while ((c = inputStream.read(buffer)) != -1) {
total += c;
out.write(buffer, 0, c);
}
session.fsync(out);
inputStream.close();
out.close();
// fake intent
IntentSender statusReceiver = null;
Intent intent = new Intent(context, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context,
1337111117, intent, PendingIntent.FLAG_UPDATE_CURRENT);
session.commit(pendingIntent.getIntentSender());
session.close();
public static List<UserHandle> returnUsers(Context myContext){
UserManager userManager = (UserManager) myContext.getSystemService(Context.USER_SERVICE);
return userManager.getUserProfiles();
}
}