mac生成.dmg压缩镜像文件

news2024/11/15 23:43:28

mac生成.dmg压缩镜像文件

  • 背景
  • 准备
  • 内容步骤
    • 1,找一个文件夹
    • 2,制作application替身
        • 1,终端方式
        • 2,黄金右手方式
    • 3,.app文件放入文件夹
    • 4,制作.dmg压缩镜像文件
    • 5,安装.dmg
  • 总结

背景

  • 为绕开App Store审核成本,mac 端可以直接安装使用debug包的app,我们只需要把debug生成的.app包压缩发送给客户即可
  • 为了给客户最好的体验,以及给予最简单的安装方式,省去不必要的安装麻烦,把.app文件和mac的application安装程序文件替身一起打包成.dmg压缩镜像文件
  • 安装时,只需要打开.dmg压缩镜像文件,直接把.app文件拖拽至application替身文件即可完成安装
  • 下面我们就探索一下怎么打包成.dmg压缩文件镜像
  • 网上也有dropdmg工具,但作为macOS开发者,个人不推荐使用,
    • 1,不知道底层有没有尾巴
    • 2,有些需要付费(家里有矿的当我没说,有矿的看完这文章省下的开支要不要大赏给博主加一下#96动力油)

准备

  • 编译好的.app文件
  • 找一个文件夹(推荐在desktop上新建),把编译好的.app文件放入此文件夹

内容步骤

1,找一个文件夹

在这里插入图片描述

  • 我是在desktop桌面上建立的文件夹,大公司需要归档留存的,可以放到特定文件夹,然后用脚本去生成application替身和.dmg(本文的操作即是脚本生成.dmg的思路)

2,制作application替身

1,终端方式
  • 1,cd索引到要找的文件夹,比如准备阶段在桌面的文件,xxx替换为自己的用户文件:
cd /Users/xxx/desktop/CPET_Mac_0710
  • 2,然后,使用命令生成application替身,比如cd索引到CPET_Mac_0710文件后,执行以下命令
ln -s /Applications/   Applications
  • 3,在CPET_Mac_0710文件夹下就看到了application替身文件
    在这里插入图片描述
2,黄金右手方式
  • 找到存放应用程序的文件夹,直接右键制作替身,然后把制作好的替身,直接拖拽至准备阶段准备的文件夹下
    在这里插入图片描述

3,.app文件放入文件夹

  • 把之前准备好的.app程序可执行文件一起放到文件夹下:
    在这里插入图片描述

4,制作.dmg压缩镜像文件

  • 1,打开磁盘工具:
    在这里插入图片描述
  • 2,新建映像->选择基于文件夹新建映像
    在这里插入图片描述
  • 3,选择准备阶段,准备的文件夹,并确认
    在这里插入图片描述
  • 4,dmg压缩文件名称,位置,是否需要加密,映像格式,有相关需求的就对应选择,没有的就按默认就行
    在这里插入图片描述
  • 5,至此,一个普通的.dmg镜像就制作完成了

5,安装.dmg

  • 本来不想加怎么安装dmg,嘿,别说还真遇到了不会安装dmg的同学,注意,不是把.dmg压缩文件拖入到application应用程序文件中

  • 1,双击上述制作好的.dmg压缩镜像文件,生成一个类似windows系统中USB扩展硬件的文件(这是解压后的dmg文件)
    在这里插入图片描述

  • 2,点击进入上步骤的文件,把.app文件拖拽至application替身文件,喝口水的时间app就安装完成了
    在这里插入图片描述

  • 3,然后进入启动台,就能看到安装的app了

  • 4,最后,右键dmg解压后的文件,推出即可
    在这里插入图片描述

总结

  • 看完本文是不是觉得.dmg压缩镜像文件是不是很简单,恭喜你又学到了新知识,mac的神秘面纱 或者说,遮羞布又被你扯下一层。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1920390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

头歌资源库(27)特别的数

一、 问题描述 编程输出一个特别的数,该数是一个由1~9组成的9位数,每个数字只能出现一次,且这个9位数由高位到低位前i位能被i整除。 二、算法思想 创建一个长度为9的数组,用于存放1~9这9个数字。使用回溯算法,从第…

Visual Studio 2019 (VS2019) 中使用 CMake 配置 OpenCV 库(快捷版)

2024.07.11 测试有效 最近需要用一下 opencv 处理图像,简单配置了一下Cmake下的 opencv 库。 没有编译 opencv ,也不知道他们为什么要自己编译 opencv 。 一、下载并安装 OpenCV 1.前往 OpenCV 官方网站 下载适用于您的系统的 OpenCV 安装包。 2.点击直接…

在分布式环境中,怎样保证 PostgreSQL 数据的一致性和完整性?

文章目录 在分布式环境中保证 PostgreSQL 数据的一致性和完整性一、数据一致性和完整性的重要性二、分布式环境对数据一致性和完整性的挑战(一)网络延迟和故障(二)并发操作(三)数据分区和复制 三、保证 Pos…

PFH点特征直方图

PFH特征描述子原理 该算法通过参数化查询关键点与其周围邻域点之间的空间差异,形成一个多维度直方图,从而实现对该点的邻域几何属性的描述。 该方法具有以下三个优势: (1)刚性变换不变性,即不受旋转、平移变换的影响; (2)采样一致性,即改变采样密度,特征保…

【高中数学/指数函数、对数函数、正弦函数】求 y=2^x+x,y=log2_x+x,y=2*sinX+x 的零点位置大小关系

【问题】 已知函数f(x)2^xx,g(x)log2_xx,h(x)2*sinXx 的零点分别是a,b,c,则a、b、c的大小顺序是? 【解答】 粗览三个函数,h(x)2*sinXx的零点是最好解决的,明显x0时h(x)0,因此c在原点的位置; 对于f(x)2^xx&#xff…

css预编译器--sass

Sass Sass 提供了 变量(variables)、嵌套规则(nested rules)、 混合(mixins)、 函数(functions),目前我使用最多的还是变量和嵌套规则,貌似目前css也支持嵌套…

kafka发送消息流程

配置props.put(ProducerConfig.PARTITIONER_CLASS_CONFIG, RoundRobinPartitioner.class); public Map<String,Object> producerConfigs(){Map<String,Object> props new HashMap<>();props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG,bootstrapServers…

代码随想录算法训练营Day36||动态规划part04

494.目标和&#xff1a;本题的方法主要用来解决------装满容量为x的背包&#xff0c;有几种方法。 可以先理解二维数组的思路&#xff1a;感觉b站一个评论写得很清晰&#xff0c;借用一下。 这题最难理解的地方在于如何初始化数组&#xff0c;为什么dp[0]1&#xff1b;我试图自…

【C++BFS】690. 员工的重要性

本文涉及知识点 CBFS算法 LeetCode690. 员工的重要性 你有一个保存员工信息的数据结构&#xff0c;它包含了员工唯一的 id &#xff0c;重要度和直系下属的 id 。 给定一个员工数组 employees&#xff0c;其中&#xff1a; employees[i].id 是第 i 个员工的 ID。 employees[…

企业数据治理做完了,如何让业务部门用起来

引言&#xff1a;企业数据治理完成后&#xff0c;确保业务部门能够充分利用这些数据并融入日常运营中&#xff0c;是实现数据价值最大化的关键步骤。以下是一些策略和建议&#xff0c;帮助推动业务部门使用数据治理成果&#xff1a; 一、管理层面推广 高层应用示范&#xff1…

kafka与zookeeper的SSL认证教程

作者 乐维社区&#xff08;forum.lwops.cn&#xff09;许远 在构建现代的分布式系统时&#xff0c;确保数据传输的安全性至关重要。Apache Kafka 和 Zookeeper 作为流行的分布式消息队列和协调服务&#xff0c;提供了SSL&#xff08;Secure Sockets Layer&#xff09;认证机制&…

在 PostgreSQL 里如何实现数据的缓存失效策略的优化?

文章目录 《在 PostgreSQL 中优化数据缓存失效策略》一、理解 PostgreSQL 中的数据缓存二、常见的数据缓存失效策略三、优化数据缓存失效策略的方法&#xff08;一&#xff09;合理调整共享缓冲区大小&#xff08;二&#xff09;使用 PostgreSQL 的缓存统计信息&#xff08;三&…

SSE(Server-Send-Event)服务端推送数据技术

SSE&#xff08;Server-Send-Event&#xff09;服务端推送数据技术 大家是否遇到过服务端需要主动传输数据到客户端的情况&#xff0c;目前有三种解决方案。 客户端轮询更新数据。服务端与客户端建立 Socket 连接双向通信服务端与客户建立 SSE 连接单向通信 几种方案的比较&…

实变函数精解【3】

文章目录 点集求导集 闭集参考文献 点集 求导集 例1 E { 1 / n 1 / m : n , m ∈ N } 1. lim ⁡ n → ∞ ( 1 / n 1 / m ) 1 / m 2. lim ⁡ n , m → ∞ ( 1 / n 1 / m ) 0 3. E ′ { 0 , 1 , 1 / 2 , 1 / 3 , . . . . } E\{1/n1/m:n,m \in N\} \\1.\lim_{n \rightar…

Spark SQL 概述

Spark SQL 概述 Spark SQL 是 Apache Spark 的一个模块&#xff0c;专门用于处理结构化数据。它集成了 SQL 查询和 Spark 编程的强大功能&#xff0c;使得处理大数据变得更加高效和简便。通过 Spark SQL&#xff0c;用户可以直接在 Spark 中使用 SQL 查询&#xff0c;或者使用 …

i18n、L10n、G11N 和 T9N 的含义

注&#xff1a;机翻&#xff0c;未校对。 Looking into localization for the first time can be terrifying, if only due to all of the abbreviations. But the meaning of i18n, L10n, G11N, and T9N, are all very easy to understand. 第一次研究本地化可能会很可怕&…

Git 删除包含敏感数据的历史记录及敏感文件

环境 Windows 10 Git 2.41.0 首先备份你需要删除的文件&#xff08;如果还需要的话&#xff09;&#xff0c;因为命令会将本地也删除将项目中修改的内容撤回或直接提交到仓库中&#xff08;有修改内容无法提交&#xff09; 会提示Cannot rewrite branches: You have unstaged …

给后台写了一个优雅的自定义风格的数据日志上报页面

highlight: atelier-cave-dark 查看后台数据日志是非常常见的场景,经常看到后台的小伙伴从服务器日志复制一段json数据字符串,然后找一个JSON工具网页打开,在线JSON格式化校验。有的时候,一些业务需要展示mqtt或者socket的实时信息展示,如果不做任何修改直接展示一串字符…

音频语言学习领域数据集现状、分类及评估

Audio Language Learning (Audio-Text Learning) 是一个新兴的研究领域&#xff0c;专注于处理、理解和描述声音。它的发展动力是机器学习技术的进步以及越来越多地将声音与其相应的文本描述相结合的数据集的可用性。 Audio Language Models (ALMs) 是这个领域的关键技术&#…

零基础学python(二)

1. 字典 字典的创建 最常见的创建方式&#xff1a; d {"k1": "v1", "k2": "v2"} 再向字典中添加一对键值&#xff1a; d["k3"] "v3" 字典还可以用dict()创建&#xff0c;这种方式中&#xff0c;键是不加引…