Project consists of a desktop application for Windows (built with Python) and an Android mobile app (built with Java). Together, they allow you to send push notifications from your computer directly to a specific Android device using Google Firebase.
- Send push notifications from a Windows PC to a targeted Android device.
- Simple interface for sending messages using the Firebase Cloud Messaging (FCM) service.
- Ability to save and remember device tokens for easier message sending.
- Python with PyQt5 for the desktop application.
- Java for the Android app.
- Firebase Cloud Messaging (FCM) for notification delivery.
- Requests library for handling HTTP requests.
- Download the .exe file.
- Run the .exe file on your computer.
- The program will appear as a tray icon in the Windows taskbar (it may be hidden under the expandable arrow).
- Click the tray icon to open the message sending window.
- Download the .apk file.
- Transfer the .apk file to your Android device (e.g., using a USB cable).
- Install the .apk on your phone (you may need to enable "Install from unknown sources" in settings).
- After installation, the app is ready to use.
- Open the app on your Android device and grant it permission to display notifications.
- In the app, copy the device token (this may take a few moments to load).
- Paste the token into the desktop application in the "Device Token" field (you can email the token to yourself for easy transfer between devices).
- Enter your message in the "Notification Body" field and click Send Notification to deliver the notification to your Android device.
- Optionally, you can use the "Remember Token" feature to avoid re-entering it in the future.
- The token is unique for each installation and will only change if the app is reinstalled.
If you'd like to modify the project or connect it to your own Firebase account, follow these steps:
- Log in to Google Firebase and create a new Firebase project.
- In Project Settings, under the General tab, connect the project to your Android app:
- Select Android as the platform and use
com.example.datatransferas the package name. - Download the
google-services.jsonfile and replace the existing file inandroid_app/app/.
- Select Android as the platform and use
- In Project Settings, go to Service Accounts and generate a new private key for the Firebase Admin SDK.
- Rename this file to
firebase_key.jsonand replace the existing file incomputer_app/data/.
- Rename this file to
- Open the
android_appfolder in Android Studio. - Build the APK from the Build menu.
- Install the required libraries using
pip install -r requirements.txt. - Run the following command in the computer_app folder with the virtual environment activated, using PyInstaller to create the executable:
pyinstaller --noconfirm --onefile --windowed --paths=.venv/Lib/site-packages --icon "icon/icon.ico" --add-data "icon/icon.ico;." --add-data "data/firebase_key.json;." "main.py"

