API Synchronization for Multi-View Animation Coordination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing user interfaces on devices face challenges in interpreting various user inputs and providing intended functionality due to limited display size, processing capability, and software limitations, making it difficult to implement smooth scrolling, gesturing, and animating operations effectively.

Innovation Solution

The implementation of application programming interfaces (APIs) that facilitate transferring function calls between user interface software and software applications to synchronize animations, perform scrolling and gesturing operations, and manage display attributes, including rubberbanding and scaling transforms, using synchronization calls and timers to ensure seamless user interactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple software applications perform animations independently, then each application can update its view attributes freely, but animations across multiple views become out of sync and user interaction becomes confusing

Engineering Contradiction:
Improveindependent animation capabilityVSAvoidanimation synchronization
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The window server acts as an intermediary between multiple software applications and the display. It receives independent animation requests from various applications, coordinates their execution, and ensures synchronized updates across multiple views. The server mediates attribute changes and animation timing to maintain consistency throughout the user interface.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the window server monitors animation progress and coordinate changes across multiple views. When one application updates its view attributes, the server detects this change and sends synchronization signals to other applications to adjust their animations accordingly, ensuring all animations remain coordinated.

Inventive Principle:
Principle #23Feedback

2Area of stationary object

If the display size is limited, then device portability is improved, but the ability to display multiple views simultaneously without synchronization issues becomes more difficult

Engineering Contradiction:
Improvedisplay sizeVSAvoidmulti-view coordination
Core Design Contradiction:
Area of stationary objectVSEase of operation

Solution Approach 1:

The display is segmented into multiple independent view regions, each associated with a different software application. The window server manages each segment separately, allowing independent content updates while maintaining overall synchronization. This segmentation enables multiple views to coexist on a limited display without interfering with each other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system adds a temporal dimension to the limited spatial display by coordinating animations across time. Instead of requiring more physical space, the window server sequences animation updates so that multiple views transition smoothly in a coordinated temporal manner, making the limited display area sufficient for multiple simultaneous views.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Power

If processing capability is limited, then device portability and battery life are improved, but smooth animations and gesturing operations become difficult to achieve

Engineering Contradiction:
Improveprocessing capabilityVSAvoidanimation smoothness
Core Design Contradiction:
PowerVSProductivity

Solution Approach 1:

The window server implements periodic action by using timers to schedule animation updates at optimal intervals. Instead of continuously processing all animation requests immediately, the server batches updates and executes them at coordinated time intervals, reducing the processing burden at any single moment while maintaining smooth animation playback.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system performs preliminary actions by pre-calculating animation parameters and preparing update sequences before user interaction occurs. The window server anticipates needed coordinate changes and pre-loads animation data, so when animations are actually executed, the processing requirement is reduced and smooth playback is achieved with limited processing capability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9183661B2Application programming interfaces for synchronization
Publication Date: 2015.11.10 APPLE INC
  • US9183661B2 patent drawing
  • US9183661B2 patent drawing
  • US9183661B2 patent drawing

AI summary

The application programming interface operates in an environment with user interface software interacting with multiple software applications or processes in order to synchronize animations associated with multiple views or windows of a display of a device. The method for synchronizing the animations includes setting attributes of views independently with each view being associated with a process. The method further includes transferring a synchronization call to synchronize animations for the multiple views of the display. In one embodiment, the synchronization call includes the identification and the number of processes that are requesting animation. The method further includes transferring a synchronization confirmation message when a synchronization flag is enabled. The method further includes updating the attributes of the views from a first state to a second state independently. The method further includes transferring a start animation call to draw the requested animations when both processes have updated attributes.