# Google Play: Device and Network Abuse policy

> Google Play rejected the app for Device and Network Abuse: it updates itself, downloads executable code, or an SDK loads untrusted pages into a webview.

Canonical: https://app369.com/fix/google-play-device-and-network-abuse/
Last updated: 2026-11-10

Google Play’s Device and Network Abuse policy bans apps, and the SDKs inside them, that interfere with or access devices, networks, APIs or other apps without authorization. Self-updating, downloading executable code from outside Google Play and unsafe webviews are covered.

**Rather hand it over?** [App Fix Ticket](https://app369.com/fixed-price/flutter-firebase-bug-fix/): One reproducible bug in an existing mobile or web app, diagnosed and fixed.

[Pay $450 for a Diagnosis](https://buy.stripe.com/dRmdRa7K4bWz8CWdwagw003) [**Ask a question first**](https://app369.com/contact/?offer=offer1-diagnosis&amp;ask=1)

Full refund if Simon can’t take it on once he sees your project, or if you cancel before work starts. [Refund terms](https://app369.com/terms-of-service/#refunds).

- ![](https://app369.com/.netlify/images?w=28&amp;fm=webp&amp;url=%2Fimages%2Fszymon.jpg)Simon does the work himself
- [5.0 from 127 Fiverr reviews, checked Oct 30, 2026](https://app369.com/reviews/)

**Short answer**

Remove any in-app updater and any code path, in your code or an SDK, that downloads dex, JAR or .so files; ship those changes through a Play update instead. Check webviews with a JavaScript interface only load your own HTTPS pages, and update or replace any SDK that does either. Then submit an update.

Rather not fix it yourself? [**App Fix Ticket**](https://app369.com/fixed-price/flutter-firebase-bug-fix/) starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.

## **Why Google Play flagged the app, and the fix**

1. 01 ### **The app updates itself outside Google Play**
  > “An app distributed via Google Play may not modify, replace, or update itself using any method other than Google Play's update mechanism.” [**Google Play, Device and Network Abuse**](https://support.google.com/googleplay/android-developer/answer/9888379) An in-app updater that downloads and installs a new APK breaks this rule. New versions go through Google Play.
2. 02 ### **The app or an SDK downloads executable code**
  > “an app may not download executable code (such as dex, JAR, .so files) from a source other than Google Play.” [**Google Play, Device and Network Abuse**](https://support.google.com/googleplay/android-developer/answer/9888379) Native code and dex files can’t be downloaded from anywhere but Google Play. Code run by a virtual machine or interpreter that has only indirect access to Android APIs, such as JavaScript in a webview, is outside this rule, but interpreted code loaded at run time must not allow potential policy violations.
3. 03 ### **A webview with a JavaScript interface loads untrusted pages**
  > “Apps or third party code (for example, SDKs) containing a webview with added JavaScript Interface that loads untrusted web content (for example, http:// URL)” [**Google Play, Device and Network Abuse (examples)**](https://support.google.com/googleplay/android-developer/answer/9888379) A webview that exposes app functions to JavaScript must not load http:// pages or URLs taken from untrusted intents. Limit it to your own HTTPS pages, or remove the interface.
4. 04 ### **Other listed behaviors**
  > “Apps that use the full-screen intent permission to force user interaction with disruptive ads or notifications.” [**Google Play, Device and Network Abuse (examples)**](https://support.google.com/googleplay/android-developer/answer/9888379) Also check: the app doesn’t install other apps without consent, block other apps’ ads, offer proxy services to third parties unless that is its primary, user-facing core purpose, bypass power management without being eligible, or use the full-screen intent permission to force interaction with disruptive ads or notifications.

Checked against the vendor’s docs on November 10, 2026: [Google Play Help: Device and Network Abuse policy](https://support.google.com/googleplay/android-developer/answer/9888379).

## **Rather hand it over?**

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

- [from $450**App Fix Ticket**One reproducible bug in an existing mobile or web app, diagnosed and fixed.**See scope and start**](https://app369.com/fixed-price/flutter-firebase-bug-fix/)
- [from $450**AI-Built App Rescue**A Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.****No issues worth fixing, no charge.**** If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.**See scope and start**](https://app369.com/fixed-price/ai-app-rescue/)

[**All 127 Fiverr reviews**](https://app369.com/reviews/)

Related: [**Google Play REQUEST_INSTALL_PACKAGES permission**](https://app369.com/fix/google-play-request-install-packages-permission/) · [**Google Play foreground service declaration**](https://app369.com/fix/google-play-foreground-service-declaration/) · [**Google Play Deceptive Behavior policy**](https://app369.com/fix/google-play-deceptive-behavior-policy/) · [**Google Play Metadata policy**](https://app369.com/fix/google-play-metadata-policy/)

Questions

## **More on this launch**

<details>

<summary>**Are JavaScript updates allowed? **+</summary>

The executable code rule doesn’t apply to code that runs in a virtual machine or an interpreter with indirect access to Android APIs, such as JavaScript in a webview or browser. Interpreted code loaded at run time must still not allow potential violations of Google Play policies.

</details>

<details>

<summary>**What if the flagged code is in an SDK? **+</summary>

The app is still responsible. The policy covers third-party code like SDKs, so update the SDK to a version without the behavior or replace it.

</details>

<details>

<summary>**Can you fix it for me? **+</summary>

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.

</details>

Something else?

## **Describe it and get a written quote**

Describe the app and where it is in the launch. You get a written scope, a fixed price and a timeline; Simon replies by email, usually within one business day.

[**Describe your problem **→](https://app369.com/contact/) [**All fixes**](https://app369.com/fix/)