Android 16 will introduce a permission for local network access

Android 16 is still months away from release, but is nearing feature freeze.

They will introduce an OPT-IN permission for asking user local network access. Opt-in is opt-in for developers, meaning apps that don’t use this permission will still get access to local network.

Hopefully, Graphene OS will allow some kind of restriction like the Network toggle. However, contrary to the network permission, apps wouldn’t have to declare it in their manifest, so blocking access would be a custom integration in the networking stack.

These restrictions are implemented deep in the networking stack, and thus they apply to all networking APIs. This includes sockets created in the platform or managed code, networking libraries like Cronet and OkHttp, and any APIs implemented on top of those. Trying to resolve services on the local network (i.e. those with a .local suffix) will require local network permission.

5 Likes

During Android 16, this permission is an opt-in feature which means only the apps that opt-in will be affected. The goal of the opt-in is for app developers to understand which parts of their app depend on implicit local network access such that they can prepare to permission guard them on a future Android release.

Sounds like in Android 17 or later it will no longer be opt-in. It makes sense to give developers time to update their apps.

3 Likes

I think that the point of those betas is that devs know now this new permission will be introduced so they have months to update.

This is awesome, I assume it probably works like the iOS one?

I don’t know, how does the iOS one works?

App has network access but can’t access devices on your local network.

How does that work for things like Chromecast?