在Assets.cariOS中分析www.example.com文件

fsi0uk1n  于 2022-12-27  发布在  iOS
关注(0)|答案(7)|浏览(155)

我一直在尝试减少iOS应用程序的整体大小,目前是48MB。当我分析子文件夹时,我发现Assets.car占用了41MB。我无法打开并查看哪个文件夹占用了那么多空间。
我找不到任何关于www.example.com文件的好文档Assets.car。有人能建议如何查看内容吗?

uelo1irk

uelo1irk1#

运行Apple的资产:

xcrun --sdk iphoneos assetutil --info Assets.car

你会得到文件中每一项的JSON描述。

{
    "Height" : 60,
    "Scale" : 1,
    "RenditionName" : "D3801CE9-19F1-4CE9-97C6-7E1EFFFCAE89",
    "AssetType" : "Vector",
    "SizeOnDisk" : 10822,
    "Name" : "mailbox",
    "Idiom" : "universal",
    "Width" : 99
  },

注意"SizeOnDisk" : 10822线。
此工具执行有限的汽车操作,有关详细信息,请运行man assetutil
Assets.car似乎是苹果的专有存档,最早出现在iOS 7中。一些实用程序能够使用CoreUI框架的私有类CUICatalog提取其内容:

还有一个应用程序可以读取.car文件:crunch 9美元,15天试用
运行strings Assets.car返回

@(#)PROGRAM:CoreUI  PROJECT:CoreUI-475.1.1
IBCocoaTouchImageCatalogTool-9.0

在Xcode-beta中运行find返回/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Overlays/IBCocoaTouchImageCatalogTool,这是一个模拟器可执行文件(i386 + x86_64)。没有进一步研究,但我敢打赌,如果在模拟器中运行此工具,它可以打开.car归档文件。

vx6bjr1n

vx6bjr1n2#

此工具可以提取.car存档:https://github.com/steventroughtonsmith/cartool

解压缩存档的步骤:

从github下载压缩文件后,在Xcode中编译生成命令行工具,然后展开Products组,右键单击cartool文件并在finder中找到它,然后运行该工具,如下所示:

  • 开放终端
  • cd /path/to/cartool
  • ./cartool /path/to/Assets.car /path/to/outputDirectory
8i9zcol2

8i9zcol23#

如果要浏览和提取资产目录,还可以使用我的应用程序Asset Catalog Tinkerer

6qfn3psc

6qfn3psc4#

打开Assets.car

Assets.car file(https://stackoverflow.com/a/61040332/4770877)
您可以尝试online tool(Assets.car Asset Extractor Online)QLCARFiles QuickLook plugin for Mac
并使用assetutil工具进行双重检查

xcrun --sdk iphoneos assetutil --info <path_to_Assets.car>
q43xntqr

q43xntqr5#

纪尧姆·兰博说的是对的,不是刘易斯42。
假设Asserts.car中有一个pdf文件(“a.pdf”)。
如果使用cartool,您将获得三个png文件(a.png/a@2x.png/a@3x.png),文件格式已更改。
但是,如果您使用AssetCatalogTinkerer,您可以预览a.pdf文件(没有更改文件格式)。

kpbwa7wx

kpbwa7wx6#

通用二进制似乎包含多个图像分辨率为每一个屏幕密度。
一旦应用程序上传到应用程序商店的文件大小将小于您的通用二进制,因为每个设备将只获得适当的图像密度。
您可以在这里检查文件大小:iTunes Connect〉我的应用〉你的应用〉活动〉你的版本〉应用商店文件大小

b5lpy0ml

b5lpy0ml7#

前面提到的所有工具都不能正确提取PDF文件,在QLCARFiles项目中有一个名为carDump的实用程序可以正确提取文件。
简而言之:
1.从https://github.com/Timac/QLCARFiles克隆项目
1.在xcode中打开
1.选择carDump方案并构建
1.使用cli:

mkdir output
carDump Assets.car output

相关问题