iOS封装小技能:苹果书签打包教程(无脑复制)

一:首先你得服务器域名必须申请ssl证书,因为苹果手机要下载描述性配置文件要求你这个域名必须https加密

二:创建一个profile.mobileconfig文件,用苹果手机去访问你这个文件的链接,会自动弹出这个。剩下的我就不多说了。我把代码发出来,你直接放你服务器里就完事了

记得改目标网址和图标

<?php
// 生成随机 UUID 的函数
function generateUUID() {
    return sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
        mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ),
        mt_rand( 0, 0xffff ),
        mt_rand( 0, 0x0fff ) | 0x4000,
        mt_rand( 0, 0x3fff ) | 0x8000,
        mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff )
    );
}

// 生成两个随机 UUID
$uuid1 = generateUUID();
$uuid2 = generateUUID();

// 配置文件内容模板,设置不允许用户删除
$configTemplate = '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>PayloadContent</key>
    <array>
        <!-- Web Clip 配置 -->
        <dict>
            <key>URL</key>
            <string>http://example.com</string> <!-- 替换为目标网址 -->
            <key>Label</key>
            <string>示例网站</string> <!-- 显示名称 -->
            <key>PayloadType</key>
            <string>com.apple.webClip.managed</string>
            <key>PayloadIdentifier</key>
            <string>com.example.webclip</string>
            <key>PayloadUUID</key>
            <string>%s</string> <!-- 使用唯一 UUID -->
            <key>PayloadVersion</key>
            <integer>1</integer>
            <key>IconURL</key>
            <string>https://example.com/icon.png</string> <!-- 确保图标 URL 是 HTTPS 并且可访问 -->
            <key>IsRemovable</key>
            <true/> <!-- 允许移除 Web Clip -->
            <key>PrecomposedIcon</key>
            <true/> <!-- 图标是否已经进行了预处理(如圆角等) -->
            <key>FullScreen</key>
            <true/> <!-- 全屏显示 -->
        </dict>
    </array>
    <key>PayloadDisplayName</key>
    <string>示例网站书签</string> <!-- 安装时显示的标题 -->
    <key>PayloadIdentifier</key>
    <string>com.example.profile</string>
    <key>PayloadRemovalDisallowed</key>
    <true/> <!-- 不允许用户移除配置 -->
    <key>PayloadType</key>
    <string>Configuration</string>
    <key>PayloadUUID</key>
    <string>%s</string> <!-- 使用另一个唯一 UUID -->
    <key>PayloadVersion</key>
    <integer>1</integer>
</dict>
</plist>';

// 填充 UUID 到模板
$configContent = sprintf($configTemplate, $uuid1, $uuid2);

// 计算配置文件内容的长度
$contentLength = strlen($configContent);

// 设置响应头,指定内容类型、编码、内容长度和下载文件名
header('Content-Type: application/x-apple-aspen-config; charset=UTF-8');
header('Content-Disposition: attachment; filename="webclip.mobileconfig"');
header("Content-Length: $contentLength");

// 输出配置文件内容
echo $configContent;
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值