Intercepting Mobile App Messages for Activity Awareness
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current mobile computing devices lack a comprehensive mechanism to effectively monitor and classify user activities, both physical and virtual, leading to limited awareness and personalized services, as existing solutions focus on individual applications and fail to capture inter-application activity patterns and dependencies.
Innovation Solution
A processor-based apparatus and method that intercepts messages from mobile applications, appends sensor data, determines context information, and uses a random indexing algorithm to predict user actions, broadcasting this information to relevant applications, thereby enhancing activity awareness across the mobile computing device ecosystem.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If activity awareness is built into every application at the application level, then each application can monitor its own usage, but inter-application activity patterns and dependencies cannot be captured
Solution Approach 1:
The patent introduces an intermediary component at the operating system level that intercepts inter-process communication messages between applications. This mediator captures activity data from multiple applications simultaneously and makes it available to activity awareness applications, enabling both individual application monitoring and inter-application pattern detection without requiring modifications to each application's source code.
2Quantity of substance
If end user applications collect activity information, then basic usage data can be obtained, but concrete detection of virtual activities and structured data about user actions cannot be provided
Solution Approach 1:
The patent replaces the mechanical approach of having each application individually collect and analyze activity data with an operating system-level message interception mechanism. This substitution enables the system to automatically capture structured data about user actions, virtual activities, and inter-application communications without requiring complex collection logic in each application, thereby improving both the quantity and precision of activity detection.
3Ease of manufacture
If application level SDKs are used for activity awareness, then developers can easily build intelligence into applications, but the solution cannot be retrofitted into existing applications without source code redesign
Solution Approach 1:
The patent implements an operating system-level intermediary that intercepts inter-process communication messages, providing activity awareness capabilities to existing applications without requiring source code modifications. This approach combines the ease of implementation (the intermediary handles all complex logic) with full adaptability (works with any existing application that uses standard inter-process communication mechanisms).
Solution Approach 2:
The patent creates a universal activity awareness mechanism at the operating system level that serves multiple functions: monitoring individual application usage, capturing inter-application communication patterns, providing structured activity data, and supporting both new and existing applications. This multi-functional approach eliminates the need for application-specific implementations while maintaining ease of use through standardized interfaces.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A mobile computing apparatus including a processor wherein the processor is configured to host a set of one or more applications. The processor is configured to receive a message from a first application in the hosted set of one or more applications, wherein the received message indicates a user action. The processor determines if the user action is in a predetermined set of user actions, and when the user action is in the predetermined set of user actions, an intercepted message is created comprising a copy of the received message. The processor is configured to broadcast the intercepted message to one or more applications in the set of hosted applications that are configured to receive the intercepted message.