【发布时间】:2022-07-23 01:26:12
【问题描述】:
我在一个应用程序中摆弄 Java 中的蓝牙连接,完成后,我从 Android 清单中删除了所有初始化代码和权限。然而,每次我启动应用程序时,它都会显示:
我的清单不包含蓝牙权限,并且我的代码没有引用,我已经删除了所有与之关联的文件。我想知道为什么会这样。此外,也许更奇怪的是,这只发生在我测试蓝牙连接的一台物理设备上。即使从 Android Studio 运行,所有其他物理设备也不会显示此对话框。该对话框在 MainActivity 加载之前显示,然后立即使应用程序崩溃。这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" >
<application
android:allowBackup="true"
android:icon="@mipmap/app_icon_large_foreground"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar" >
</activity>
<activity
android:name=".splashScreen"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".settings_activity"
android:label="Settings"
android:parentActivityName=".MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
<activity
android:name=".secondActivity"
android:label="SecondActivity"
android:parentActivityName=".MainActivity"
android:screenOrientation="portrait" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
<activity
android:name=".MainActivity"
android:label="MyApp"
android:windowSoftInputMode="stateAlwaysHidden" />
</application>
</manifest>
在我的任何代码中都没有提到蓝牙!为什么这个对话框不断出现?它与应用程序的权限缓存有关吗?除了我已经卸载并重置了应用程序缓存,它在应用程序的应用程序权限中显示“无权限”。
这不是一个问题,而是一个好奇心,但如果我将应用发布到 Google Play 并且用户必须处理这个盒子,这无疑是一件麻烦事...:/
【问题讨论】:
-
你也应该删除代码中的权限请求