如何在 android 中获取用户权限而不将其声明到清单中

How to take User permissions in android without declaring it into manifest

我想要用户 READ_CONTACTS 和 ACCESS_NETWORK_STATE 我的应用程序的权限,如果我在清单上声明此权限,我的应用程序会被 google 播放拒绝

Manifest file:  
  <uses-permission 
  android:name="android.permission.ACCESS_NETWORK_STATE" />
 <uses-permission android:name="android.permission.READ_CONTACTS"
     />

我正在使用此代码获取网络信息

 ConnectivityManager cm = (ConnectivityManager) context
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = cm.getActiveNetworkInfo();
    boolean networkState = activeNetworkInfo != null && activeNetworkInfo.isConnected();

如果我从清单文件中删除权限 "cm.getActiveNetworkInfo()" 这会显示错误 "you need to add permission on Manifest file"

除了清单文件之外,他们是否还有其他方式获得用户许可 请帮助我。

如果不在清单中声明权限,则无法请求权限。

与其关注删除清单中的权限声明,不如关注 Google Play 拒绝该应用的原因并尝试解决问题。

根据官方文档,您必须在清单文件中声明权限。您在应用提交方面遇到了一些其他问题

您的清单将您的应用告知设备和 Play 商店。你不能试图跳过它。如果您真的不需要这些权限,请不要使用它。否则,如果您的应用已被停止,请在您的 Play 控制台中提出申诉。

编辑:阅读 this 关于清单和 Google Android 开发者文档。