如何使用应用程序细化减少应用程序大小,并解释减少应用程序大小的不同方法

时间:2017-01-04 07:07:39

标签: ios app-thinning

我的.png图像有1.6 MB。我使用了几个具有17 MB内存大小的类,但我的项目大小约为40 mb。任何人都可以建议减少应用程序大小的最佳解决方案,以便上传到app store.uggest me如何在我的目标文件中找到最大的文件。(我使用的是图片资产,我没有未使用的代码)。

2 个答案:

答案 0 :(得分:1)

有助于您的技术列表:

删除未使用的代码

通常第三方库有很多未使用的代码。包含仅与该应用中使用的功能相关的代码。如果您发现任何图像,音乐,应在应用程序中删除未在应用程序中使用的额外内容。 按需加载资源

如果您的项目包含预期很少需要的教程视频或图形等资源,请考虑将这些资源移动到某个地方的Web服务器上,并让您的应用程序按需加载它们。亚马逊的S3服务或Linode上的小型VPS通常可以很好地完成这项工作。这种技术需要谨慎,因为您希望避免在安装后通过大量下载使用户感到沮丧。

使用带图案的图片

UIColor包含一个出色的功能,可以减少在项目中包含大纹理图像的需要。上面显示了一个示例,您希望为应用程序提供风格化的背景,尽管此技术同样适用于您希望将纹理添加到UI控件的较小区域。只需将所需视图的背景颜色设置为图案颜色,如下所示:

view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"pattern.png"]];

视图现在将具有纹理背景,可以根据视图的大小进行缩放和调整。适用于纹理的良好来源是Subtle Patterns项目。

使用拉伸图像

UIImage包含一种创建图像的高效方法,可以随大小动态扩展。设置图像,使中间部分伸展,保持边缘不变。这通常用于按钮,其中角落和侧面的样式,但按钮的主体是平原。我也很适合在表格视图中创建“蚀刻”效果(比如上面的App Store示例)。这里不是创建一个代表单元格背景的320x48图像,而是创建一个具有所需顶部,主体和底部颜色的小型1x3图像。然后将其指定为backgroundView,从而产生效果。

UIImage* template  = [UIImage imageName:@"template.png"];
UIImage* stretched = [template resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 1, 0)]
cell.backgroundView = [[UIImageView alloc] initWithImage:stretched];

答案 1 :(得分:0)

您需要在app中使用图片资源。添加Assets.xcassets文件中的所有图像。

相关问题