Android Process Shutdown Prevention via Event Object Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for shutting down processes in the Android operating system do not effectively prevent unintentional reinitiation of processes, leading to unpredictable errors and resource inefficiencies.

Innovation Solution

A method and apparatus that obtain and delete process identifiers from system event objects to prevent unintentional reinitiation of shut down processes, utilizing modules for process identifier acquisition, determination, examination, and processing to ensure processes are not inadvertently restarted by system events.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the kill(pid) command is used to shut down a process, then the process can be terminated immediately, but unpredictable errors could occur and the process can still be re-initiated by system events

Engineering Contradiction:
Improveprocess termination speedVSAvoidprocess shutdown reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent introduces an intermediary mechanism between the kill command and the process termination. A broadcast receiver intercepts the system events that would normally trigger process reinitialization, acting as a mediator to prevent the process from being restarted. This resolves the contradiction by maintaining both immediate termination capability and reliable shutdown prevention.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs preliminary action by registering a broadcast receiver before the process termination occurs. This receiver is pre-configured to monitor and block specific system events that would cause process reinitialization. By setting up this protective mechanism in advance, the system ensures that when the process is killed, it cannot be accidentally restarted by subsequent system events.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the forceStopPackage() function is used to shut down a process, then the process can be terminated through the Android operating system, but the process can still be re-initiated by system events

Engineering Contradiction:
Improveprocess shutdown controlVSAvoidprocess state stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors for system events that would trigger process reinitialization. When such events are detected, the broadcast receiver intercepts them and prevents the process from being restarted. This closed-loop feedback ensures that once a process is shut down through forceStopPackage(), it remains terminated despite subsequent system events.

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If a process is shut down by a user using conventional methods, then memory space can be freed, but the process can be immediately reinitiated by the operating system

Engineering Contradiction:
Improvememory spaceVSAvoidprocess reinitiation time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent extracts the process identifier from the system event objects that would normally trigger process reinitialization. By removing this identifier from the event processing chain, the system prevents the automatic reinitiation mechanism from functioning. This allows memory to be freed while preventing the process from being immediately restarted, thus resolving the contradiction between memory management and process persistence.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP2981894B1Method and apparatus for managing processes
Publication Date: 2018.08.15 TENCENT TECHNOLOGY (SHENZHEN) CO LTD
  • EP2981894B1 patent drawingFigure 1~2
  • EP2981894B1 patent drawingFigure 3
  • EP2981894B1 patent drawingFigure 4

AI summary

A method and apparatus for managing processes are provided, the method comprising: obtaining a process identifier for a process in an operating system; after the shutdown of the process by a user, determining, in response to a first system event of the operating system, whether a first set of event objects comprise the process identifier to generate an examination result; and if the examination result indicates that the first set of event objects comprise the process identifier, deleting the process identifier from the first set of event objects. The method and apparatus for managing processes effectively prevent a process that was shut down by a user from being unintentionally reinitiated.