android-manifest 相关问题

清单提供有关Android系统应用程序的基本信息

Android 要求用户为我的应用启用清单中已请求的权限

我正在开发的应用程序使用蓝牙和存储权限,因此我的AndroidManifest.xml包含以下内容。 我正在开发的应用程序使用蓝牙和存储权限,因此我的 AndroidManifest.xml 包含以下内容。 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"></uses-permission> <uses-permission android:name="android.permission.BLUETOOTH"></uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE"></uses-permission> 但是,安装应用程序后,在扫描蓝牙设备时什么也找不到,直到我在设备设置中手动打开位置权限(设置 -> 应用程序 -> [我的应用程序] -> 权限)。我在某处读到,如果您想使用蓝牙,Android 6.0(可能是7.0)及更高版本需要此权限,但为什么在清单文件中使用这些权限安装时未启用它?我是不是漏掉了一个? 位置和蓝牙是两个不同的东西。 您不需要请求访问蓝牙的权限,因为它是正常权限,但您确实需要请求位置权限,因为它是危险权限。 您可以在此处找到运行时必须请求的所有权限的列表。 来自官方文档。 系统权限分为正常和危险两类: 普通权限不会直接危及用户的隐私。如果您的应用程序在其清单中列出了普通权限,系统会授予 自动许可。 危险权限可能会让应用程序访问用户的机密数据。如果您的应用程序在其中列出了普通权限 清单中,系统自动授予权限。如果你 列出危险权限,用户必须明确给予 批准您的应用程序。 还有 如果设备运行的是 Android 5.1 或更低版本,或者您应用的目标 SDK 为 22 或更低:如果您在中列出了危险权限 清单中,用户在安装时必须授予权限 应用程序;如果他们不授予权限,系统不会安装 该应用程序根本没有。 如果设备运行的是 Android 6.0 或更高版本,并且您的应用程序的目标 SDK 是 23 或更高版本:应用程序必须在 清单,并且它必须请求每项危险许可 应用程序运行时需要。用户可以授予或拒绝每个 权限,应用程序可以在有限的情况下继续运行 即使用户拒绝权限请求,也具有能力。 因此,您很可能正在运行 API 23+ 的设备或模拟器上测试您的应用程序,并且请求设备的位置。 位置权限是一种“危险”权限,因此在 Android 6.0 或更高版本中,用户必须手动允许位置访问。为此,您必须以编程方式添加危险权限。请查看此处,了解这方面的良好说明。 P.S. 要了解哪些权限是危险,哪些是正常,请查看这里。 某些权限被归类为危险权限,需要在运行时请求。 ActivityCompat.requestPermissions(thisActivity, new String[]{Manifest.permission.READ_CONTACTS}, MY_PERMISSIONS_REQUEST_READ_CONTACTS); 用位置权限替换 READ_CONTACTS 权限 这是一个为曼西警察局工作的电话窃听员,用来跟踪和骚扰工作人员,而他的简历女友则与任何人在一起,然后科里跟踪并骚扰他们

回答 4 投票 0

Cordova Android 重复使用两个插件的功能

我在cordova中使用了两个不同的插件,它们都具有相同的使用功能,一个带有android:required =“false”,另一个没有。 这会导致构建时出现错误: 进程调试清单 ...

回答 12 投票 0

如何在xamarin android中扩展应用程序类

我想扩展Android应用程序,我想重写oncreate方法。 但由于某种原因,它非常糟糕......只有当我删除[应用程序]我才能运行它,但根据这个......

回答 2 投票 0

应用程序更新/升级后Sqflite数据丢失

我正在构建一个使用 sqflite^2.0.2 将数据存储为本地数据库的应用程序。 一切工作正常,但在更新设备上的应用程序时出现问题:所有数据都丢失了。它本身...

回答 2 投票 0

Android studio 在模拟器上接收短信,但在物理手机上不接收短信

您好 stackoverflow 社区, 我想问你一个问题,因为我有一段时间被困住了,没有解决办法。 我几乎完成了我的 Android Studio 项目,我显示了一个 Toast.makeText 并发现...

回答 1 投票 0

AndroidManifest.xml 中某些元素的用途是什么

我在 Android 应用程序的 AndroidManifest.xml 文件中发现了以下两行: 我在 Android 应用程序的 AndroidManifest.xml 文件中发现了以下两行: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"> 为什么我们在<xml>标签里写“编码”,它的目的是什么? 写第二行的目的是什么? 既然你自己找到了第一行,我就只向你解释第二行。它只是设置 android XML 命名空间。当使用自己的资源时,您也应该添加它们的名称空间,例如: xmlns:myapp="http://schemas.android.com/apk/res/com.mypackage 这将声明 myapp 命名空间。 编写 xml 时不需要第一行,但最好将其作为 XML 的第一行,如果您使用任何其他编码,则需要它。 需要第二行,因为清单应该是根Android Manifest xml 的节点。事实上,它在文件末尾被 </manifest> 关闭,就像任何其他节点一样。

回答 2 投票 0

android:exported 需要为元素显式指定 <receiver#com.dexterous.flutterlocalnotifications.ScheduledNotificationBootReceiver>

在 sdk gphone64 x86 64 上以调试模式启动 lib\main.dart... lib\main.dart:1 C:\Users\lucks\OneDrive\Desktop\intern ndroid pp\src\debug\AndroidManifest.xml:15:9-22:20 错误: android:导出n...

回答 3 投票 0

Android 清单中的意图过滤器可以包含多少个方案和主机标签

需要有关清单中指定的意图过滤器标记的更多信息。我知道我们可以通过两种形式指定数据: 需要有关清单中指定的意图过滤器标记的更多信息。我知道我们可以用两种形式指定数据: <intent-filter> <data android:host="com.myHost" android:scheme="content"/> </intent-filter> 并且: <intent-filter> <data android:scheme="content"/> <data android:host="com.myHost"/> </intent-filter> 但是我想知道是否可以存在多种组合,例如 <intent-filter> <data android:host="com.myHost" android:scheme="content"/> <data android:scheme="content"/> <data android:host="com.myHost1"/> </intent-filter> 或: <intent-filter> <data android:host="com.myHost" android:scheme="content"/> <data android:scheme="content"/> <data android:host="com.myHost1"/> <data android:scheme="content"/> <data android:host="com.myHost2"/> </intent-filter> 在最后一种情况下,我首先想知道这是否可以存在以及如何决定哪个主机用于哪个方案,因为包含方案和主机的数据标签可以以任何顺序出现。 请帮忙。 我知道我们可以用两种形式指定数据 请勿将 content 用于方案,除非您确实是想创建一项活动来支持 ContentProvider。 但是我想知道是否可以存在几种组合 如果您的过滤器只有一个 <data> 属性,您肯定可以有不同的值,例如联系人应用程序中的值: <activity android:name=".activities.ShowOrCreateActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"> <intent-filter> <action android:name="com.android.contacts.action.SHOW_OR_CREATE_CONTACT" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="mailto" /> <data android:scheme="tel" /> </intent-filter> </activity> 此外,一个组件可以有多个 <intent-filter> 元素,每个元素都与其他元素进行逻辑或运算(任何与任何过滤器匹配的 Intent 都是该组件的匹配项)。因此,对于更复杂的场景,每个 <data> 元素有 2 个以上属性,我倾向于将它们放在单独的 <intent-filter> 元素中。 如何决定哪个主机用于哪个方案 任何匹配都被认为是好的。您可以自己检查 Intent 以了解有关其包含内容的更多信息。 补充@CommonsWare答案,如果你不那么具体,你似乎不能使用两个<data>标签。 A)在我的一个应用程序中,我可以: <data android:scheme="myAppScheme1"/> B)并且 <data android:scheme="myAppScheme2" android:host="host2"/> C) 但以下内容将忽略第一个标签(使用 myAppScheme1://whatever URI 不起作用): <data android:scheme="myAppScheme1"/> <data android:scheme="myAppScheme2" android:host="host2"/> D)但是,如果我补充第一个方案,它将适用于两个 URIS: <data android:scheme="myAppScheme1" android:host="host1"/> <data android:scheme="myAppScheme2" android:host="host2"/> 也许如果你真的需要案例 C),你最好创建两个意图过滤器 考虑将数据标签拆分为具有单独属性的多个标签,以避免混淆。 标签应该只声明一个唯一属性(即方案或主机,但不能同时声明两者)。这更好地匹配意图过滤器的运行时行为,因为它们将所有声明的数据属性组合到单个匹配器中,该匹配器允许处理跨属性类型的任何组合。例如,以下两个声明是相同的: <intent-filter> <data android:scheme="http" android:host="example.com" /> <data android:scheme="https" android:host="example.org" /> </intent-filter> <intent-filter> <data android:scheme="http"/> <data android:scheme="https"/> <data android:host="example.com" /> <data android:host="example.org" /> </intent-filter> 他们都处理以下所有事情: http://example.com https://example.com http://example.org https://example.org 第二个更好地传达了组合行为,并且对外部读者来说更清楚,人们不应该依赖于自包含的方案/主机。在第一个中,http://example.org 也匹配并不明显,这可能会导致一组更复杂的方案/主机的混乱(或不正确的行为)。请注意,这不适用于主机+端口,因为它们必须在同一标签中声明并且仅彼此关联。 问题 ID:IntentFilterUniqueDataAttributes 更多信息:https://developer.android.com/guide/components/intents-filters 供应商:Android开源项目 联系方式:https://groups.google.com/g/lint-dev 反馈:https://issuetracker.google.com/issues/new?component=192708

回答 3 投票 0

install_failed_missing_shared_library 我该如何解决这个问题?

我正在尝试在 Android Studio 上调试我的项目,一些非常简单的 hello world 事情。 我收到这条消息: “安装没有成功。 无法安装应用程序:

回答 2 投票 0

我的 Android 应用程序未显示在应用程序抽屉中?

我制作了一个短信应用程序,但安装后它没有出现在应用程序抽屉(您从主屏幕上启动应用程序的位置)上!我可以确认它确实已安装,因为...

回答 4 投票 0

android studio 中针对不同活动的清单文件结构

我是 Android 应用程序的新手。开发,我想知道如何使用意图过滤器和活动。 如何使用不同的布局和意图过滤器设置多个活动以及页面如何设置...

回答 1 投票 0

致命异常:java.lang.SecurityException::用户10021和当前进程都没有android.permission.CHANGE_WIFI_STATE

我收到此错误 致命异常:java.lang.SecurityException:InforService:用户 10133 和当前进程都没有 android.permission.CHANGE_WIFI_STATE。 在 android.os.Parcel。

回答 1 投票 0

深层链接意图不起作用

我按照 https://developer.android.com/training/app-indexing/deep-linking.html 上的说明进行操作,但是当我想通过 adb 触发意图时: adb shell 启动 -W -a a...

回答 13 投票 0

如何修复 AndroidManifest.xml:30:标签 <service> 属性名称包含无效字符“{”。在统一构建 Android 应用程序时

我在尝试从 Unity 构建 Android 应用程序时遇到错误,这是输出: CommandInvokationFailure:重新打包资源失败。 C:\Program Files (x86)\Android ndroid-sdk uild-tools 9....

回答 1 投票 0

如何解决在物理 Android 设备上运行 Flutter 应用时的连接问题?

我开发了一个带有 Go 后端的 Flutter 应用程序,在使用模拟器时可以按预期运行。但是,当我尝试在物理 Android 设备上运行它时遇到问题。具体...

回答 1 投票 0

清单合并失败:Android Studio Iguana 中出现属性 property#android.adservices.AD_SERVICES_CONFIG 错误

我正在尝试在我的应用程序中添加 AdMob 广告。当我添加 AdMob 依赖项并在运行应用程序后实施广告时,我收到此错误。 清单合并失败:属性 property#android.adservices。

回答 1 投票 0

Android Studio Gradle 构建错误 - 为属性“清单”指定的不存在

我认为 Android Studio 中的 Gradle 构建文件存在一个小问题。由于我没有使用它们的经验,并且少数研究结果没有解决我的问题,我认为,你们中的一些人......

回答 1 投票 0

清除无法找到显式活动类{com.android.chrome/com.android.browser.BrowserActivity}错误?

android.content.ActivityNotFoundException:无法找到显式活动类 {com.android.chrome/com.android.browser.BrowserActivity};您是否在 AndroidManifest.x 中声明了此活动...

回答 1 投票 0

如何编辑 .APK 文件中的清单

有人知道一种只编辑apk文件中的脚本(如清单)的方法吗? 我需要将一些行粘贴到脚本中..

回答 3 投票 0

在 v23 上找不到符号 Manifest.permission.WRITE_EXTERNAL_STORAGE

我正在使用以下 build.gradle 文件编译代码 安卓 { 编译SDK版本23 buildTools版本“23.0.1” 默认配置{ applicationId“com.example” minSdkVersion...

回答 8 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.