我已根植我的手机,并通过授予所需权限将我的应用程序作为系统应用程序。现在,我尝试过使用:
@api_view(['GET'])
def messages(request, event_id):
JSON_RESPONSE = {STATUS: None, DATA: None, MESSAGE: None}
messages = Message.objects.filter(event=event_id)
serializer = GetMessageSerializer(messages, many=True)
JSON_RESPONSE[STATUS] = SUCCESS
JSON_RESPONSE[DATA] = serializer.data
return Response(JSON_RESPONSE, status=status.HTTP_200_OK)
@api_view(['POST'])
def saveMessage(request):
JSON_RESPONSE = {STATUS: None, DATA: None, MESSAGE: None}
serializer = SaveMessageSerializer(data=request.data)
if serializer.is_valid():
JSON_RESPONSE[STATUS] = SUCCESS
JSON_RESPONSE[MESSAGE] = "Saved"
serializer.save()
return Response(JSON_RESPONSE, status=status.HTTP_201_CREATED)
else:
JSON_RESPONSE[STATUS] = FAIL
JSON_RESPONSE[MESSAGE] = serializer.errors
通过授予权限:
activityManager.killBackgroundProcesses(packageName);
android.os.Process.killProcess(pid);
我的应用程序仍然无法关闭其他应用程序。我试过从我的应用程序中关闭应用程序的应用程序。上面的代码正在执行而没有任何错误。虽然我的应用程序是一个系统应用程序(我也尝试过我的应用程序作为用户应用程序),但Linux内核仍然忽略了杀死其他应用程序的调用。
我知道从我们自己的应用程序中删除其他应用程序并不好,但我想知道还需要做些什么来杀死其他应用程序。
答案 0 :(得分:1)
请注意, android.os.Process.killProcess(PID); 允许系统根据其PID请求杀死任何进程,内核仍然会对您实际可以杀死的PID施加标准限制。通常,这意味着只有运行调用者的包/应用程序的进程以及该应用程序创建的任何其他进程;
您可以尝试通过命令行终止第三方应用:
adb shell am force-stop com.my.app.package
当然你也可以从java运行这个命令。