Starting from 2024, MAUIsland will incorporate local database support to optimize API usage, particularly for reducing calls to external APIs such as the GitHub API. As part of this enhancement, we will introduce a local database functionality into each installation of the application.
Upon the initial launch of the app, each time the Community controls are accessed, it will retrieve all the necessary data and store it in the local database under the table named 'CardInfo.' After successfully saving all card information locally, the application will then update the 'ApplicationLastUpdate' field within the 'CardsSync' table. This field is responsible for tracking the timestamp of the last card data update, considering that GitHub cards exhibit dynamic data changes over time.
To ensure efficient data retrieval and prevent unnecessary API calls, the application will compare the current time with the 'ApplicationLastUpdate' timestamp. If more than one hour has elapsed since the last update, the app will initiate a data refresh by retrieving the updated information from the GitHub API. This proactive approach not only significantly reduces the frequency of API calls but also safeguards against potential rate limiter issues that could arise from excessive or unnecessary external API requests.
Description
Starting from 2024, MAUIsland will incorporate local database support to optimize API usage, particularly for reducing calls to external APIs such as the GitHub API. As part of this enhancement, we will introduce a local database functionality into each installation of the application.
Upon the initial launch of the app, each time the Community controls are accessed, it will retrieve all the necessary data and store it in the local database under the table named 'CardInfo.' After successfully saving all card information locally, the application will then update the 'ApplicationLastUpdate' field within the 'CardsSync' table. This field is responsible for tracking the timestamp of the last card data update, considering that GitHub cards exhibit dynamic data changes over time.
To ensure efficient data retrieval and prevent unnecessary API calls, the application will compare the current time with the 'ApplicationLastUpdate' timestamp. If more than one hour has elapsed since the last update, the app will initiate a data refresh by retrieving the updated information from the GitHub API. This proactive approach not only significantly reduces the frequency of API calls but also safeguards against potential rate limiter issues that could arise from excessive or unnecessary external API requests.
Public API Changes
Intended Use-Case
Save lazy data to local database, reduce server calling overhead