This iOS framework belong to iOS SDK and it contains :
- graphical views ie. the navigation, list, details and action forms
- code to bind data to views
- code to send actions and retry according to network status
- services that the mobile application needs.
List form contains a DataSource object that implement UITableViewDataSource and UICollectionViewDataSource to provide to UITableView and UICollectionView records from DataStore FetchedResultsController
DataSource implement FetchedResultsControllerDelegate to listen to DataStore FetchedResultsController change
A delegate on DataSource could
- provide some additional table or view configuration (ex: how to fill the table or collection view cell)
- be notified of content change
- etc ...
let fetchedResultsController = dataStore.fetchedResultsController(tableName: "tableName")
let dataSource = DataSource(tableView: self.tableView, fetchedResultsController: fetchedResultsController)A service listen to application lifecycle event and execute events. For instance at start of application, database, logging, preferences, etc... are configured.
The QApplication instance replace the default application instance and allow to initialize a set of services.
See Sources/Application/Services for a list of installed services.
New one could be created and injected, see tutorial
| Name | License | Usefulness |
|---|---|---|
| QMobileAPI | 4D | Network api |
| QMobileDataStore | 4D | Store data |
| QMobileDataSync | 4D | Synchronize data |