This is the Android-based client component of our FLaaS system. It consists of the following components:
- FLaaS (also known as FLaaS-Local): a standalone service that needs to be installed on the device and provides the core FL functionality to the device in accordance to the requests sent by the Server.
- FLaaSLib: a mobile app library integrated within each FLaaS-enabled third-party app willing to participate in FL training processes.
- Red / Green / Blue apps: example toy apps that utilise FLaaSLib, crated to demonstrate the simplicity and efficiency of a third-party app registering with our system.
For more information about our system, please read the following publications:
- FLaaS: Cross-App On-device Federated Learning in Mobile Environments
- FLaaS: Federated Learning as a Service
- Demo: FLaaS - Practical Federated Learning as a Service for Mobile Applications
- Demo: FLaaS - Enabling Practical Federated Learning on Mobile Environments
- Open the project using the latest version of Android Studio.
- Configure the server host url at
org.sensingkit.flaas.network.APIService. - Configure your Pushwoosh keys in the FLaaS app (
org.sensingkit.flaas):com.pushwoosh.appidinAndroidManifest.xmlfcm_sender_idinstrings.xml
- Build and install the apps FLaaS, Red, Green and Blue into your devices.