我的 APK 的 META-INF 中的 androidx.XXXX.version 文件是什么?

2023-11-30

当使用 AndroidX 库构建 APK 时,我会得到很多小文本文件,例如META-INF/androidx.core_core.version。这些文件的目的是什么?它们是如何使用的androidx?


我最近也很好奇,所以浏览了一下源代码。

版本信息注入的第一次尝试是here;它是通过在 AndroidManifest.xml 中添加元数据标签来实现的。

然后来了一对(1, 2)的提交添加了一个任务(到 Gradle 插件中,在许多/所有? androidx 库之间共享),其唯一目的是生成 *.version 文件。这种方法取代了早期的元数据标签注入,原因是(来自提交消息):

以前的支持库通过添加元数据标签来跟踪其使用情况 对于每个库,但这会给某些库带来问题,例如 包中的服务和元数据的成本很高 经理。

要解决此问题,请转至在 java 中存储版本信息 jar META-INF/group_name.version 内的资源。

然而,这并没有回答问题 - 因为这些提交都没有提到将版本信息存储在 androidx 库中的原因。
我也尝试过搜索 *.version 用法在 androidx 代码库中,但不幸的是找不到任何有趣的东西。

最终,*.version生成任务的作者很友善地透露了一些信息关于他们的目的:

它们的主要目的是让我们能够跟踪哪些版本 Play 商店中的应用程序正在使用 的 androidx 库或 当有人提交失败的重现 APK 时。我们最近也开始了 在工作室端使用组合检查工具来检测什么 考虑到库版本,功能应该可用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我的 APK 的 META-INF 中的 androidx.XXXX.version 文件是什么? 的相关文章

  • ViewPager 中的按钮滚动到特定页面

    我的 ViewPager 内的布局之一有一个按钮 R layout add site 我想要点击按钮的选项 它会滚动到我的特定页面 我已经可以选择滑动到特定页面 但我想同时拥有这两个选项 现在我确信有办法做到这一点 但由于某种原因 我无法弄
  • 如何更改Android应用程序的页面?

    我是安卓新手 我已经设计了由许多页面组成的应用程序 任何人都有源代码或任何可以让我知道如何构建它的东西 例如 当我单击按钮时 我希望它将页面更改为下一页 谢谢你卡 运行通过第一个应用程序教程 https developer android
  • Android-使用 ViewHolder 和 AsyncTask 加载联系人-缩略图问题

    我正在创建一个自定义联系人应用程序 我使用带有 ViewHolder 设计模式的 ArrayAdapter 进行优化 由于加载缩略图需要花费大量时间 因此我使用 AsyncTask 类来加载图像 用于第一组联系人我的屏幕上 图片加载得很好
  • 空 Activity 中的内存泄漏

    我最近决定使用泄漏金丝雀 https github com square leakcanary在我的项目中 所以我创建了一个空的项目Activity只是为了测试 当我运行应用程序时 在没有逻辑代码或视图的项目创建之后 我从这个库中获得了内存
  • Firebase Android:电子邮件链接身份验证。意图过滤器不起作用

    我正在为 Android 实现 firebase 电子邮件链接身份验证机制 我已经使用 firebase 指南实现了它 但现在打开电子邮件中的链接后 应用程序始终会进入启动器活动 我无法调试该问题 我还在我的应用程序中实现了动态链接 效果很
  • 为什么签名的 Android apk 无法在模拟器上运行

    我已经制作了一个android项目的签名apk 每当我的客户尝试在模拟器上运行它时 他都会遇到以下错误消息 D Android android sdk windows tools gt adb install r abc apk 500 K
  • 如何从 RSS feed 中获取图像

    我正在尝试从 URL 获取 RSS 新闻http timesofindia indiatimes com rssfeeds 1945062111 cms http timesofindia indiatimes com rssfeeds 1
  • 如何过滤EditText的输入?

    我想过滤一个的输入EditText 只允许使用数字和字母 首先我使用TextWatcher处理最后一个输入字符 但是当您移动光标或将某些内容粘贴到EditText 这个方法失败了 现在我想知道有没有办法过滤非法输入并反馈给用户 Add In
  • 使用 sdk 3.0 在 Facebook 墙上发布

    我试图在由其 ID 定义的用户墙上发布一条消息 但作为响应 我收到错误 未知方法 我的代码是 final Bundle params new Bundle params putByteArray message Test getBytes
  • 直接在布局 xml 中填充微调器

    是否可以在布局 xml 中直接填充 Spinner 的选项 这一页 http developer android com guide tutorials views hello spinner html建议我应该使用 ArrayAdapte
  • Android-如何在指定时间后台下载数据

    我提前很抱歉没有发布任何代码 主要是因为我一生都无法弄清楚我需要如何做我需要做的事情 基本上 在一天中的指定时间间隔 例如下午 5 点 我希望我的应用程序从我的服务器下载一些数据并将其存储在设备上 这是为了减少每次运行应用程序时下载数据对我
  • 为并行的小型已知冻结进程创建匿名 AsyncTask 是一个好习惯吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 例如 您要做一些需要几秒钟的事情 并且不想冻结您的 UI 线程 对吗 您可以使用 AsyncTask 但您不想创建外部 或内部 类来解决小冻结问
  • 如何获取 Android 版 Chromium 的源代码

    我正在尝试为 Android 构建 Chromium 开源浏览器 我已经提到过 Visit http code google com p chromium wiki AndroidBuildInstructions http code go
  • 在 Repository 类中观察 Forever 是一个好习惯吗?数据库+网络分页列表

    我正在按照架构指南构建应用程序 实现了房间数据库缓存 网络 需要从单独的实体获取最新页码 我的型号 Entity tableName top rated movie page public class Top Rated Movies Pa
  • 如何执行graph-api Facebook Android SDK来上传照片并标记人物?

    如何执行graph api Facebook Android SDK来上传照片并标记人物 在网络上 对于 Android 版 facebook sdk 有很多混淆 我的第一个方法 Bitmap img bitmap if img null
  • 旋转后,精灵和矩形位置在 Libgdx 中未对齐

    我有以下代码 其中紧密映射的精灵 矩形和多边形在 libgdx 中以相同角度旋转 旋转后矩形与精灵不对齐 虽然精灵在绘制时会旋转 但旋转后坐标和尺寸保持不变 矩形的情况并非如此 请参阅下面的代码和结果图 public void rotate
  • 如何在屏幕上拖动图像

    谁能帮助我如何为可以在屏幕上拖动的图像编写程序 你能给我一个示例代码吗 多谢 我怎样才能为它制作游戏得分 我将感谢您的回复 imageView setOnLongClickListener new OnLongClickListener p
  • android中使用xml的新自定义字体方法

    随着 android 发布 O 预览版 添加了一个新功能 称为xml 中的字体 它很容易实现 但我没有什么疑问 让我首先添加最好的方法1 右键单击资源文件夹并前往新建 gt Android 资源目录 新的出现资源目录窗口 2 在资源类型列表
  • Android - 下载 JSON 数据并保存到共享首选项

    我正在从 PHP 服务读取 JSON 数据 每当该 JSON 的版本发生变化时 我想将其存储在 Android 上 用新数据替换旧数据 JSON 仅用于填充 Spinner 我的问题是 JSON 有 36KB 可以将其存储在共享首选项中有一
  • 当从 Firebase 控制台删除 Firebase 用户(用户登录后)时,它不会反映在应用程序中 [重复]

    这个问题在这里已经有答案了 The user uid仍然会来 在这个的帮助下uid null 我假设用户已登录 我也尝试过addAuthStateListener mAuthListener 但我仍然获取之前删除的用户的 UID 如果不使用

随机推荐

  • 如何将 PHP 字符串传递到 Javascript 函数调用中? [复制]

    这个问题在这里已经有答案了 可能的重复 将 PHP 字符串传递给 Javascript 变量 并转义换行符 所以 本质上我试图从 PHP 页面传递一个字符串作为 javascript 函数的参数 PHP 包含在脚本所在的页面中 但它们位于两
  • 带有行号的 pandas 堆栈

    我有一个 Pandas DataFrame 示例 A B C D 0 0 441040 0 235533 0 899417 1 960367 1 0 701764 2 343389 1 293865 0 556737 2 0 511988
  • 何时使用 L.TileLayer 与 L.tileLayer

    我刚刚使用 Leaflet 为网站构建地图 并注意到要添加平铺层至少可以使用两种方法 L TileLayer and L tileLayer 其名称仅因单个字符的大小写而异 然而 虽然这两种方法返回的对象都可以添加到由L map 返回的对象
  • PHP - CodeIgniter - 为 foreach() 提供的参数无效

    我尝试使用 CodeIgniter 编写一个网站 但 PHP 遇到问题 我确信它是如此简单并且不会错 但我不知道 bug 只是 CodeIgniter 的新手
  • Spring异常时事务回滚

    我正在学习Spring 并且在Spring中的事务处理方面遇到了一些麻烦 这是我的代码 Transactional rollbackFor Exception class public void createGroupStudent Stu
  • 如何使用 purrr map 函数执行逐行 prop.tests 并将结果添加到数据帧?

    我正在尝试解决 R 中的以下问题 我有一个包含两个变量 成功次数和总试验次数 的数据框 A tibble 4 x 2 Success N
  • 如何将国家/地区拨号代码放入 intlTelInput 中的括号中

    我在我的网站上使用 intlTelInput 如何使用括号分隔拨号代码 对于前 这个插件的默认输出是 1202someNumber 我需要 1 202someNum 基于此处的文档表格 https github com jackocnr i
  • Pandas Dataframe 到带分隔符的字符串

    我想将数据框转换为字符串 这个话题如何将 pandas 数据框行转换为逗号分隔的字符串接近我想要的 此解决方案的唯一问题 我有一列 国家 其中包含带有分隔符的字符串 例如 使用此解决方案 数据框正在转换为字符串 但我将 美国 变为 美国 州
  • OpenCV Android 原生代码构建问题

    我正在学习如何使用 OpenCV 编写 C 代码 我想在 Android 中运行它 我使用Android Studio 我创建了一个支持 C 的新简单项目 然后将测试代码添加到 C 文件中 看来是我自己的文件编译和链接的 现在 我认为与我的
  • 确定数据表中的重复项

    我有一个从 CSV 文件加载的数据表 我需要根据两列确定哪些行是重复的 product id and owner org id 在数据表中 一旦确定了这一点 我就可以使用该信息来构建结果 该结果是一个仅包含不唯一行的数据表 以及一个仅包含唯
  • 只需按一下按键即可连续移动?

    我正在尝试用java编写一个程序 该程序涉及通过按一次按键使对象不断移动 想想 Pacman 你按下一次 Pacman 就会继续上升 直到你按下另一个键 如果可能的话 我想让代码保持简单 我原来的动作 一次按键 一次动作 是这样的 publ
  • 将类变量传递给另一个类

    我想将一个类变量传递给另一个类 并使其成为该类的类变量 在以下情况下我将如何执行此操作 public class GLCamTest extends Activity public float array something class G
  • Jena Fuseki Sparql 无查询=错误

    我正在尝试使用这个简单的查询将数据插入 jena fusioni 图中 PREFIX test
  • Android 语音通话记录

    我希望有一些代码能够收到任何传入和传出语音呼叫的通知 我需要获取以下所有内容 如果是来电或去电 拨打的号码或来电显示的电话号码 通话时长 或者是否是未接来电 如果我可以获得更多联系信息 特别是联系人姓名 如果电话号码与手机联系人列表中的某个
  • 具有不同本地名称的 XDocument 重复命名空间

    我有一个 XML 文档 如下所示
  • 仅在 iOS 17 设备以下遇到错误“线程 1:EXC_BAD_ACCESS(代码 = 1,地址 = 0x0)”

    我刚刚将 XCode 更新到版本 15 遇到此错误 仅限 17 以下的 iOS 版本 Thread 1 EXC BAD ACCESS code 1 address 0x0 显示此错误的代码 PathMonitorConectivityPro
  • 如果日志包含特定单词,则忽略并移至下一个模式

    我有一个来自 spring 日志文件的日志文件 日志文件具有三种格式 前两种格式各占一行 中间如果有关键字app info 则为自己开发者打印的信息 如果没有 则由spring框架打印 我们可能会以不同于 Spring 框架的方式对待开发者
  • 自动检测新添加的源文件

    我的问题是 每次添加新的源文件时 我都被迫重新运行 CMake 这真的很烦人 有什么方法 CMake 可以自动检测新添加的源文件吗 CMake 没有观察文件夹的功能 某些操作系统 例如 MacOS X 可以在文件夹发生更改时执行操作 如果任
  • 如何使 C# Xamarin.Android 应用程序在手机启动时运行?

    我一直在尝试让应用程序在手机启动时运行 并最终在按下时运行应用程序KeyCode CameraButton 我正在使用一个名为BootReceiver 继承自BroadcastReceiver 这是我的课程 namespace ColorP
  • 我的 APK 的 META-INF 中的 androidx.XXXX.version 文件是什么?

    当使用 AndroidX 库构建 APK 时 我会得到很多小文本文件 例如META INF androidx core core version 这些文件的目的是什么 它们是如何使用的androidx 我最近也很好奇 所以浏览了一下源代码