com.briyoom.debugpair
1. Introduction & Who We Are
Welcome to DebugPair (“we,” “our,” “us,” or the “App”). This Privacy Policy explains how Yash Rayjada, operating under the brand YBR Digital, based in Gujarat, India, collects, uses, protects, and discloses information when you download, install, and use our mobile application DebugPair (Package ID: com.briyoom.debugpair).
DebugPair is an on-device Android developer utility, diagnostic toolkit, and wireless Android Debug Bridge (ADB) client. It allows software engineers, quality assurance testers, and power users to inspect device performance, view live screen mirrors, manage applications, run shell commands, and interact with Android devices over local Wi-Fi networks without requiring a physical computer.
2. Information We Collect
We classify the information processed through DebugPair into three distinct categories:
A. Information You Provide Voluntarily
- Device Nicknames & Configuration: Custom labels or names you assign to your saved target ADB devices (e.g., “Living Room Android TV”).
- Console Commands & Custom Snippets: Shell commands, script parameters, and console snippets you save or mark as favorites within the Console feature.
- Customer Support Communications: If you contact us directly via email (
info@ybrdigital.in), we receive your email address, name, and any contextual diagnostic screenshots or text you provide to help resolve your inquiry.
B. Information Collected Automatically
- Aggregated Usage Analytics (Firebase Analytics): We collect aggregated, de-identified telemetry about application usage, such as screen views, button clicks, feature navigation, pairing attempt outcomes (success or general failure reason), APK installation success/failure counts, and in-app review triggers. We do not transmit device passwords, shell outputs, or personal file contents to analytics.
- Crash & Diagnostic Reports (Firebase Crashlytics): In the event of an application crash or unhandled framework exception, Crashlytics captures technical stack traces, device hardware model, operating system version, memory status, and timestamp of the incident to help us identify and fix bugs.
- Advertising Identifiers (Google AdMob): For non-paying (free tier) users, the Google Mobile Ads SDK may collect device identifiers (such as the Google Advertising ID / GAID), coarse IP-derived geographic data, and ad engagement metrics to display contextual or personalized advertisements in accordance with your consent preferences. Pro users have all advertisements suppressed.
- Subscription & Purchase Data (RevenueCat & Google Play Billing): When purchasing DebugPair Pro, transactions are processed by Google Play. RevenueCat receives an anonymous app user identifier, purchase token, product ID, transaction timestamp, and active entitlement status (
debugpair_pro). We never receive or store your credit card, debit card, UPI credentials, or financial account details. - App Configuration & Status Checks: On launch, DebugPair securely connects to our configuration servers transmitting solely the application package identifier (
com.briyoom.debugpair) to verify operational status, check whether scheduled maintenance is active, and confirm the minimum supported application version. No personally identifiable information, user data, network address, or target device data is transmitted during this check.
C. Technical & Operational Data Processed Locally
- Cryptographic ADB Authentication Keys: To establish authenticated ADB sessions over Wi-Fi, DebugPair generates a 2048-bit RSA keypair and a self-signed X.509 certificate on your Android host device. These cryptographic keys are stored exclusively in internal app storage and are never uploaded to any remote server.
- Local Network Discovery Data: IP addresses (RFC 1918 private subnet addresses), TCP ports, and mDNS service names (such as
_adb-tls-connect._tcp.and_adb-tls-pairing._tcp.) broadcast on your local Wi-Fi network are processed solely in memory and local storage to connect to your devices. - Target Device Telemetry: CPU usage percentages, RAM statistics, internal storage breakdowns, running process lists, installed package names, battery health, and display properties queried via ADB commands are rendered temporarily on your screen and are never transmitted to our servers.
- Local Screen Mirroring Feed: Live screen mirroring is delivered via an on-device H.264 video stream decoded directly through Android's hardware
MediaCodeconto a local texture. No video stream data ever leaves your local network.
3. Android Permissions & Hardware Access
DebugPair requests only permissions strictly necessary to deliver its core wireless debugging, device pairing, and utility capabilities. The table below details every permission declared in our application manifest:
| Permission | Type | Purpose & Scope in DebugPair | Data Involved |
|---|---|---|---|
INTERNET |
Normal | Enables raw TCP socket communication with target ADB devices over local Wi-Fi (ports 5555, pairing ports) and enables secure HTTPS communication for Google Play Billing (RevenueCat), Firebase crash reporting, analytics, AdMob ads, and remote maintenance checks. | Local socket packets; anonymized diagnostic logs; ad/purchase validation tokens. |
ACCESS_NETWORK_STATE |
Normal | Allows DebugPair to detect whether an active network connection exists before initiating ADB connections or attempting network operations. | Network state (connected/disconnected, Wi-Fi vs. cellular). |
ACCESS_WIFI_STATE |
Normal | Enables inspecting Wi-Fi connection parameters required to support local wireless ADB device discovery and pairing. | Wi-Fi connection status. |
CHANGE_WIFI_MULTICAST_STATE |
Normal | Allows acquiring a Wi-Fi Multicast Lock (WifiManager.MulticastLock) to receive local mDNS / DNS-SD broadcast packets for discovering wireless ADB services on the subnet. |
mDNS service advertisement packets on the local network. |
NEARBY_WIFI_DEVICES |
Runtime (Android 13+) | Required by Android 13+ (API 33+) to scan for and connect to nearby Wi-Fi devices. Configured with android:usesPermissionFlags="neverForLocation" in our manifest. |
Local Wi-Fi device names and ADB service endpoints. Never used to derive physical location. |
ACCESS_LOCAL_NETWORK |
Runtime (Android 16/17+) | Required on next-generation Android releases with Local Network Protection (LNP) to allow direct socket communication with devices on local private subnets (RFC 1918). | Local subnet IP addresses and ports of target ADB devices. |
POST_NOTIFICATIONS |
Runtime (Android 13+) | Displays an ongoing foreground notification while an active ADB connection is maintained, informing the user of the connected device and providing a one-tap Disconnect action. | Connection status text and device name shown locally. |
FOREGROUND_SERVICE |
Normal | Allows running the ongoing background service (AdbForegroundService) so Android does not kill active ADB terminal, file transfer, or screen streaming sessions when minimized. |
Service operational lifecycle. |
FOREGROUND_SERVICE_CONNECTED_DEVICE |
Normal (Android 14+) | Declares to Android 14+ (API 34+) that the foreground service manages an active connection to an external peripheral or networked computing device (the target ADB device). | Connected device identifier and session state. |
MediaStore.Images.Media.EXTERNAL_CONTENT_URI in the Pictures/DebugPair directory) without requesting legacy wide-storage permissions. File sharing is facilitated securely via Android's FileProvider.4. How We Use Information
We process collected and local data strictly for the following legitimate operational purposes:
- Delivering Core ADB Functionality: Facilitating wireless pairing, executing ADB shell commands, deploying the local screen mirroring agent, transferring selected files, and managing apps.
- Maintaining Connection Stability: Displaying foreground service notifications to prevent operating system task-killers from aborting long-running operations.
- App Diagnostics & Crash Mitigation: Investigating stack traces and error logs via Firebase Crashlytics to resolve software crashes and compatibility issues across diverse Android hardware.
- Analytics & Performance Optimization: Evaluating aggregated feature engagement (e.g., which commands or diagnostic tools are most utilized) to optimize app ergonomics and performance.
- In-App Purchases & License Verification: Validating DebugPair Pro purchase receipts via Google Play and RevenueCat to restore purchases and unlock premium features.
- Delivering In-App Advertising: Displaying non-intrusive App Open, Native, Interstitial, and Rewarded ads to free-tier users via Google AdMob.
- Service Maintenance & Updates: Checking whether scheduled maintenance is ongoing and notifying users of critical app updates via Google Play In-App Updates.
5. Third-Party Services & SDKs
DebugPair incorporates trusted third-party software development kits (SDKs) to provide infrastructure, monetization, and diagnostic services. Each provider operates under its own privacy policy:
| Service / SDK | Provider | Role in DebugPair | Privacy Policy Link |
|---|---|---|---|
| Google Mobile Ads (AdMob) | Google LLC | Displays ads to free users; manages user consent through the User Messaging Platform (UMP). | Google Ads Privacy |
| Firebase Analytics | Google LLC | Measures aggregated, de-identified user engagement events and screen views. | Google Privacy Policy |
| Firebase Crashlytics | Google LLC | Captures crash stack traces and diagnostic logs for stability troubleshooting. | Firebase Privacy Policy |
| RevenueCat | RevenueCat, Inc. | Manages in-app subscriptions, Pro entitlements, and Google Play receipt validation. | RevenueCat Privacy Policy |
| Google Play In-App Review & Updates | Google LLC | Enables in-app Play Store ratings and flexible/immediate application updates. | Google Play Terms |
| Open Source Engines (libadb-android & scrcpy-server) | Open Source Community | Local ADB protocol implementation and local H.264 screen mirroring encoder. Runs 100% locally on device. | N/A (Local Code Execution Only) |
6. Data Storage, Security & Retention
A. Where Data is Stored
- Local Host Storage (SharedPreferences): Your saved device profiles (host IP, port, nickname, auto-connect preference), custom shell commands, favorite command IDs, onboarding completion status, and daily action counts are stored locally on your device.
- Internal Key Storage: Generated RSA private keys (
adb_key.pk8) and public certificates (adb_cert.der) are stored exclusively in the app's sandboxed internal directory (context.filesDir/adb_keys). - Temporary Files: Files downloaded via the File Manager or temporary screenshot captures are stored in internal cache (
context.cacheDir) and are overwritten or cleared automatically.
B. Security Measures
- Encrypted Communications: All remote network communications with YBR Digital, Google Firebase, AdMob, and RevenueCat are encrypted using industry-standard Transport Layer Security (TLS / HTTPS).
- Local Cleartext Exception: In accordance with Android's
network_security_config.xml, cleartext communication is permitted solely for local private subnets (RFC 1918) and loopback addresses to connect to local ADB daemon ports that do not support CA-signed TLS certificates. - Backup Prevention: We declare
android:allowBackup="false"in our manifest to prevent ADB backup tools from extracting your private ADB authentication keys or local configurations. - Secure File Sharing: All inter-app file exchanges (e.g., viewing an image or opening a pulled text file) are isolated through an Android
FileProviderusing ephemeral content URIs rather than exposing public file paths.
C. Data Retention
Local application data persists until you manually delete saved items, reset ADB keys in Settings, clear app data via Android Settings, or uninstall DebugPair. Diagnostic crash logs retained by Google Firebase are subject to Firebase's default 90-day retention window before automatic deletion.
7. Data Sharing & Disclosure
We do not sell, rent, lease, or monetize your personal information to third parties.
We disclose information only in the limited circumstances outlined below:
- Service Providers: We share data with Google (Firebase, AdMob) and RevenueCat solely to deliver crash reporting, analytics, ad monetization, and subscription management as described in this policy.
- Legal Obligations: We may disclose information if required to do so by applicable law, regulation, legal process, or lawful governmental request from a competent authority.
- Protection of Rights: We may disclose information where necessary to enforce our Terms & Conditions, investigate potential violations, or protect the rights, property, or safety of DebugPair, our users, or the public.
8. Advertising, Analytics & Crash Reporting
A. Google AdMob Disclosures
DebugPair displays advertisements through Google AdMob to users on the free tier. AdMob may collect and process device identifiers, IP addresses, and interaction data to serve ads. In applicable jurisdictions (including the European Economic Area, United Kingdom, and Switzerland), we integrate Google's User Messaging Platform (UMP) SDK to present a consent form where you can choose between personalized ads, non-personalized ads, or configure individual vendor consents.
B. Analytics Disclosures
Firebase Analytics helps us understand how features are used in the aggregate (e.g., frequency of remote control usage vs. file manager operations). We do not record user keystrokes, personal file names, or terminal command arguments containing sensitive data. You may opt out of personalized tracking via your Android device settings under Google > Ads > Delete advertising ID.
9. User Rights & Data Deletion Choices
Depending on your jurisdiction, you have specific legal rights regarding your personal information under applicable data protection laws (such as India's DPDPA 2023, EU/UK GDPR, and California's CCPA/CPRA):
- Right of Access & Portability: You may request confirmation of whether we process any personal data relating to you and request a copy of such data.
- Right to Rectification: You may update or correct your locally stored device names and commands directly within the app.
- Right to Erasure (“Right to be Forgotten”): Because DebugPair does not require user accounts or maintain a remote user profile database, you can erase your data instantly through the following methods:
- Reset ADB Keys: Navigate to Settings > Reset ADB RSA Keys to permanently delete your host cryptographic keypair.
- Delete Saved Devices / Commands: Swipe or tap delete on any saved device in the Devices tab or snippet in the Console tab.
- Clear App Storage: Open your phone's Settings > Apps > DebugPair > Storage > Clear Storage / Clear Data to instantly wipe all local preferences, database records, and cached files.
- Uninstall the App: Removing DebugPair from your device completely deletes all sandboxed internal files.
- Right to Withdraw Consent: You may revoke Android runtime permissions (Notifications, Nearby Devices, Local Network) at any time via your device's system settings under Settings > Apps > DebugPair > Permissions.
- Requesting Erasure of External Support Records: If you have communicated with us via email and wish to have your support correspondence permanently purged, email your request to
info@ybrdigital.inwith the subject “Data Deletion Request.” We will process your verified request within 30 days.
10. Children's Privacy
DebugPair is a specialized technical developer tool intended for software engineers, IT professionals, and adult technology hobbyists. It is not directed to children under the age of 13 (or under 16 for residents of the European Union/UK, or under 18 for minors in India without parental consent).
We do not knowingly collect, solicit, or process personal data from children. If we discover that a child has provided us with personal information, we will take immediate steps to delete such information from our records. If you are a parent or guardian and believe your child has provided us with personal information, please contact us immediately at info@ybrdigital.in.
11. International Data Transfers
Our third-party service providers (Google LLC and RevenueCat, Inc.) are headquartered in the United States and maintain server infrastructure globally. If you use DebugPair outside the United States, your de-identified diagnostic and billing verification data may be transferred to, stored, and processed in jurisdictions that may have different data protection laws than your country of residence.
These service providers utilize lawful transfer mechanisms approved by competent regulatory bodies, including Standard Contractual Clauses (SCCs) and adherence to recognized data privacy frameworks, ensuring adequate levels of data protection.
12. Regulatory Compliance
A. Google Play Store User Data Policy
DebugPair strictly complies with Google Play's Developer Program Policies regarding User Data. We declare all permissions transparently, avoid unnecessary background access, use Scoped Storage for gallery additions, apply neverForLocation to nearby Wi-Fi device scanning, and enforce foreground service notifications for active background ADB operations.
B. India: Digital Personal Data Protection Act, 2023 (DPDPA) & IT Act, 2000
For users in India, data is processed in accordance with the Digital Personal Data Protection Act, 2023 (DPDPA) and the Information Technology Act, 2000 (along with applicable Reasonable Security Practices rules). YBR Digital acts as the Data Fiduciary for any personal data processed through our support channels. You have the right to grievance redressal by contacting our designated Grievance Officer at info@ybrdigital.in.
C. European Economic Area (EEA) & UK: General Data Protection Regulation (GDPR)
If you reside in the EEA or UK, we process personal data under the following lawful bases established in Article 6 of the GDPR:
- Consent: For personalized advertising managed through the UMP consent dialog.
- Performance of Contract: To deliver the core functions of DebugPair and validate purchased Pro subscriptions.
- Legitimate Interests: To troubleshoot crashes, secure the application, prevent fraudulent transactions, and optimize user experience.
D. California: CCPA / CPRA Disclosures
Under the California Consumer Privacy Act as amended by the California Privacy Rights Act (CPRA), California residents have the right to know what personal information is collected, request deletion, and opt out of the “sale” or “sharing” of personal data. We do not sell your personal information. Any sharing of identifiers with advertising partners on our free tier is subject to your consent preferences.
13. Changes to this Privacy Policy
We may update this Privacy Policy from time to time to reflect modifications in our features, changes in legal requirements, or operational updates. When revisions occur, we will update the “Last updated” date at the top of this document.
Material modifications will be notified within the application via an on-screen notice or update banner. We encourage you to review this Privacy Policy periodically to stay informed about how we safeguard your data. Continued use of DebugPair following the posting of changes constitutes acceptance of the revised policy.
14. Contact Information
If you have any questions, inquiries, complaints, or data deletion requests regarding this Privacy Policy, please contact us at:
- Developer / Data Controller: Yash Rayjada (YBR Digital)
- Email Address: info@ybrdigital.in
- Official Website: https://www.ybrdigital.in
- Jurisdiction / Location: Gujarat, India
- Google Play Developer Page: YBR Digital on Google Play
15. Google Play Data Safety Summary
To assist you and provide complete transparency in alignment with Google Play's mandatory Data Safety declaration form, the following table summarizes all data types collected, shared, or processed by DebugPair:
| Data Category | Data Type | Collected or Shared? | Purpose | Ephemeral or Stored? | Optional or Mandatory? |
|---|---|---|---|---|---|
| Location | Approximate / Precise Location | Not Collected | N/A (NEARBY_WIFI_DEVICES is flagged with neverForLocation) |
None | N/A |
| Personal Info | Name, Email Address | Collected Only if Contacting Support | Customer support & troubleshooting communications. | Stored in support inbox until resolved. | Optional (User-initiated) |
| Financial Info | Payment / Credit Card Details | Not Collected by App | Processed exclusively by Google Play Billing; app only receives purchase receipt tokens. | None (Processed by Google Play) | N/A |
| App Activity | App interactions, screen views, button clicks | Collected (Firebase Analytics) | Analytics, feature optimization, bug diagnostics. | Aggregated on Firebase (90-day retention). | Mandatory for basic app telemetry |
| App Info & Performance | Crash logs, fatal exceptions, performance diagnostics | Collected (Firebase Crashlytics) | Crash mitigation, application stability, bug fixes. | Stored on Firebase Crashlytics servers. | Mandatory |
| Device or Other IDs | Advertising ID (GAID), RevenueCat Anonymous App User ID | Collected / Shared (AdMob, RevenueCat) | Advertising (free tier only) and in-app purchase entitlement management. Suppressed for Pro users. | Stored by AdMob / RevenueCat per their retention schedules. | Mandatory for free ad delivery & Pro purchase verification |
| Files & Media | User-selected files, screenshots | Processed 100% Locally | Local ADB push/pull file transfers and local screenshot saving to Pictures gallery. | Stored locally on device / gallery. Never uploaded. | Optional (User-initiated) |