一次偶然的机会,公司的项目要用到推送,我自己本来就很懒,不愿意去弄整套APNS的流程,刚好之前跟朋友聊起过他们的产品中集成了个推的Android推送,说是体验还可以,那这次我就试一下他们的iOS推送。于是抱着试一试的心态,我先建个demo,试着去集成一下个推iOS推送SDK,摸索着完成了整个流程,言归正传,直接上硬菜!
说到远程推送,应该用的也挺多的,今天就基于SEA的云推送服务,做一个推送的小demo,来了解一下iOS中的远程推送是怎么一回事儿,首先你得有苹果的开发者账号,好咸蛋也差不多了,主要内容走起。 一、准备阶段 1.在苹果开发官网上申请推送证书之前需要一个名字叫做certSigningRequest文件。该文件在MAC系统中生成,用于在Apple网站上申请推送证书文件,下面是利用钥匙串生成该文件的步骤: (1).打开Mac下的钥匙串-》钥匙串访问-》证书助理-》从证书颁发机构请求证书,
1、Apple ID 。这个是指苹果开发者账号(下面还有个App IDs,这两个(Apple ID、App IDs)有些人会搞混,这就有点尴尬了)。有了这个,你才可以登录到App Store去下载App。
访问 苹果开发者账户,进入帐号首页,选择Certificates, Identifiers & Profiles
Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器。
创建App ID,下载对应证书,双击证书导入mac,在钥匙串中导出p12证书文件。 使用第三方推送需要配置p12证书。我记得用企业证书发布企业app打包前也导入了p12文件,不知道p12是否必须使用,不过都导入也没有什么问题。 现在苹果证书的生成,不过基本思路一样,大同小异。要想生成苹果首先要打开苹果研发者网站。
今天我们来说下怎么自己建一个Push推送服务器, 当然还是用的苹果的APNS 这里我们讲的的自己服务器端的实现
APNs,即 Apple Push Notification Service,依托一个或几个系统常驻进程运作,是全局的(接管所有应用的消息推送),可看作是独立于应用之外,设备与苹果的服务器之间维持一个长连接进行消息传递。
1、开发者证书(分为开发和发布两种,类型为ios Development,ios Distribution),这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基证书,用来证明自己开发者身份的; 2、appID,这是每一个应用的独立标识,在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的
2、iOS从APNS Server获取device token,应用程序接收device token。
登录苹果开发者官网Apple Developer, 点击顶部的Support,点击membership,点击enrollment,最后点击Enrollment的Learn more about these programs链接进入Apple Developer Program - Apple Developer, 打开这个界面后,点击右上角的Enroll按钮,滚动到最底部,点击Start Your Enrollment开始申请:
前言 逛淘宝时如果你搜索了某个品牌的某款鞋子,它接下来就会给你推送该品牌的其他款鞋子或者其他品牌的类似鞋款,类似的广告你一定收到过很多,那么广告商是如何对你的设备精准投放你感兴趣的内容?手机上有不同的APP,搜狗地图APP的推送为何没有推送到搜狗录音助手APP上呢?如何保证能精准推送到你的设备,且不同APP之间不会错乱? 问题明确下就是开发是如何追踪定位到具体的设备和APP呢?这就需要对设备和APP进行唯一标识来进行区分,在此对各种标识符的标识内容和作用进行梳理~ 常见的设备ID标识符 1) IMEI I
好久没有写过博客啦,今天就由本菜鸟给大家做一个简单的IOSApp消息推送教程吧!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多刚开始接触ios的人会很想了解一下。(ps:网上看了一下虽然有很多讲述推送的好教程,我也是看着一步步学会的,但是这些教程的时间都是去年或者更早时期的,对引导新手来说不是很合适)
苹果APNs(英文全称:Apple Push Notification Service)
可以看出,JPush iOS Push 包括 2 个部分,APNs 推送(代理)与 JPush 应用内消息。 红色部分是 APNs 推送,JPush 代理开发者的应用(需要基于开发者提供的应用证书),向苹果 APNs 服务器推送。由 APNs Server 推送到 iOS 设备上。 蓝色部分是 JPush 应用内推送部分,即 App 启动时,内嵌的 JPush SDK 会开启长连接到 JPush Server,从而 JPush Server 可以推送消息到 App 里
如今SSL协议已是大势所趋所以爱游习惯了每个网站都加上SSL,这样才显得网站比较高大上,所以今天就在闲置的服务器上面安装一个AriaNg,一样的启用了SSL,启用后发现在AriaNg设置里面Aria2 RPC协议里面的Http 和 WebSocket 被禁用了,爱游查了下,AriaNg在0.2.0版本时对此做了限制,也就是在使用 Https 访问 AriaNg 时,Http 和 WebSocket 将被禁用,所以这里我们需要把Aria2也同样的加上SSL加密协议。
本节主要描述XenMobile的证书注册,在上一篇文章中我们介绍了XenMobile主要使用的证书类型与各个组件需要的证书。本节将介绍证书的注册,证书注册主要包含管理苹果设备需要的APNS证书与服务器证书。
继续,这里有一个区别,因为PP文件的开发测试版需要真机调试,所以我们需要绑定真机,这里因为之前我添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来在此添加,在发布PP文件中,是没有这一步的;
原标题:2019年iOS开发证书+生产证书+极光推送/ iOS开发者中心证书生成方法以及极光推送证书使用方法!
远程通知是指在联网的情况下,由远程服务器推送给客户端的通知,又称 APNs(Apple Push Notification Services)。在联网状态下,所有设备都会与 Apple 服务器建立长连接,因此不管应用是打开还是关闭的情况,都能接收到服务器推送的远程通知。
注意:下载AU后需安装java8运行环境才能启动;安装好了最新Java8运行环境,解压AU软件包,无需安装,Windows 64位系统点击appuploader.exe启动;如果是Linux/Windows 32位系统或Mac系统双击appuploader.jar即可启动;直接用苹果账号即可登录使用
本文翻译自:raywenderlich.com,原文作者:Jack Wu,译者:JMStack
在这篇博客中我将向大家介绍一个集成在VisualStudio中的很酷很给力的设计器——MultiRow模板设计器。它与VisualStudio无缝集成,提供与VisualStudio一脉相承的设计体验,可以使用VisualStudio提供的各种窗口、菜单命令等,你可以像使用WinForm设计器一样使用它。所以本系列博客将重点介绍一些很酷的功能。 尽管该设计器是专门为MultiRow产品开发的,想学习、试用MultiRow产品的朋友们固然不容错过,但是相信对其他朋友们也有很大的借鉴作用。 创建模板 那么,现在
默认的企业开发者账号没有开通MDM服务,需要申请开通MDM服务成为Vendor,输入企业账号和密码登录,提示你填写一些东西申请服务。如果你按要求填写了,提交了,然后就是傻傻的等待了。当时我提交后一周后也没反应,索性直接打电话人工客服,一分钟搞定。如果开通成功后会发邮箱通知,然后在制作证书的时候会出现MDM CSR选项。如下:
本文主要介绍了iOS推送过程中可能遇到的坑,包括推送证书配置错误、推送权限未关闭或未正确关闭、设备token获取失败或发送给XG服务器的姿势不正确等问题。同时,也提供了推送诊断工具以帮助开发者排查推送问题。
在移动应用开发中,消息推送可以说是一项非常重要的功能,它能够起到提醒或者唤醒用户的作用,同时也是产品运营人员更高效地实现运营目标的重要手段,比如将新上架一个商品或者最新的一条新闻推送给用户。
如果说移动时代的前身是什么,我想一个可能的答案就是网络时代。网络的兴起,让所有设备相连成为了可能,也催生了电商、社交、搜索等多个领域的商业巨头。而移动时代,则是网络时代的必然延伸,它代表着更便捷、更广阔、更深入的连接。
(1) 个人账号(Individual):费用99美金一年, 该账号在App Store销售者只能显示个人的ID,比如zhitian zhang,单人使用。个人账号只能有一个开发者。100个苹果的iOS设备UDID测试。
HTTP 400 - 请求无效 HTTP 401.1 - 未授权:登录失败 HTTP 401.2 - 未授权:服务器配置问题导致登录失败 HTTP 401.3 - ACL 禁止访问资源 HTTP 401.4 - 未授权:授权被筛选器拒绝 HTTP 401.5 - 未授权:ISAPI 或 CGI 授权失败 HTTP 403 - 禁止访问 HTTP 403 - 对 Internet 服务管理器 的访问仅限于 Localhost HTTP 403.1 禁止访问:禁止可执行访问 HTTP 403.2 - 禁止访问:禁止读访问 HTTP 403.3 - 禁止访问:禁止写访问 HTTP 403.4 - 禁止访问:要求 SSL HTTP 403.5 - 禁止访问:要求 SSL 128 HTTP 403.6 - 禁止访问:IP 地址被拒绝 HTTP 403.7 - 禁止访问:要求客户证书 HTTP 403.8 - 禁止访问:禁止站点访问 HTTP 403.9 - 禁止访问:连接的用户过多 HTTP 403.10 - 禁止访问:配置无效 HTTP 403.11 - 禁止访问:密码更改 HTTP 403.12 - 禁止访问:映射器拒绝访问 HTTP 403.13 - 禁止访问:客户证书已被吊销 HTTP 403.15 - 禁止访问:客户访问许可过多 HTTP 403.16 - 禁止访问:客户证书不可信或者无效 HTTP 403.17 - 禁止访问:客户证书已经到期或者尚未生效 HTTP 404.1 -无法找到 Web 站点 HTTP 404- 无法找到文件 HTTP 405 - 资源被禁止 HTTP 406 - 无法接受 HTTP 407 - 要求代理身份验证 HTTP 410 - 永远不可用 HTTP 412 - 先决条件失败 HTTP 414 - 请求 - URI 太长 HTTP 500 - 内部服务器错误 HTTP 500.100 - 内部服务器错误 - ASP 错误 HTTP 500-11 服务器关闭 HTTP 500-12 应用程序重新启动 HTTP 500-13 - 服务器太忙 HTTP 500-14 - 应用程序无效 HTTP 500-15 - 不允许请求 global.asaError 501 - 未实现 HTTP 502 - 网关错误 用户试图通过 HTTP 或文件传输协议 (FTP) 访问一台正在运行 Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回一个表示该请求的状态的数字代码。该状态代码记录在 IIS 日志中,同时也可能在 Web 浏览器或 FTP 客户端显示。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。日志文件的位置在默认状态下,IIS 把它的日志文件放在 %WINDIRSystem32Logfiles 文件夹中。每个万维网 (WWW) 站点和 FTP 站点在该目录下都有一个单独的目录。在默认状态下,每天都会在这些目录下创建日志文件,并用日期给日志文件命名(例如,exYYMMDD.log)。HTTP1xx - 信息提示 这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。 • 100 - 继续。 • 101 - 切换协议。2xx - 成功 这类状态代码表明服务器成功地接受了客户端请求。 • 200 - 确定。客户端请求已成功。 • 201 - 已创建。• 202 - 已接受。 • 203 - 非权威性信息。 • 204 - 无内容。 • 205 - 重置内容。 • 206 - 部分内容。3xx - 重定向 客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。 • 302 - 对象已移动。 • 304 - 未修改。 • 307 - 临时重定向。4xx - 客户端错误 发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。 • 400 - 错误的请求。 • 401 - 访问被拒绝。IIS 定义了许多不同的 401 错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在 IIS 日志中显示: • 401.1 - 登录失败。 • 401.2 - 服务器配置导致登录失败。 • 401.3 - 由于 ACL 对资源的限制而未获得授权。 • 401.4 - 筛选器授权失败。 • 401.5 - ISAPI/CGI 应用程序授权失败。 • 401.7 – 访问被 Web 服务器上的 URL 授权策略拒绝。这个错误代码为 IIS 6.0 所专用。 • 403 - 禁止访问:IIS 定义了许多不同的 403
我们在实现推送功能的时候,更需要了解下推送的原理机制,这样我们在发现问题时候才好定位到问题的解决办法。
IOS中消息的推送有两种方式,分别是本地推送和远程推送,本地推送在http://my.oschina.net/u/2340880/blog/405491这篇博客中有详细的介绍,这里主要讨论远程推送的流程与配置过程。
苹果的证书繁锁复杂,制作管理相当麻烦,今天决定重置一个游戏项目中的所有证书,做了这么多次还是感觉很纠结,索性直接记录下来,日后你我他查阅都方便;
在Web开发中,有时候我们需要在特定情况下将按钮置灰并设置为不可用状态,以防止用户重复点击或者暂时禁止某些操作。本文将介绍如何使用jQuery来实现这一效果。
原贴:http://blog.sina.com.cn/s/blog_68158ebf0100wr7z.html
MDM全程为Mobile Device Manager,是苹果提供的一套企业级管理Apple设备的方案,意在帮助企业统一管理监控设备
APNS(全称:Apple Push Notification Service),翻译为:苹果消息推送服务。
image.png 引言 Perfect 是一个完整和强大的工具箱,框架和应用程序服务器为Linux,iOS和MacOS(OS X)。它提供了Swift工程师为开发面向客户端和服务器端应用程序的Swift编程语言开发轻量级,可维护,可扩展的应用程序和其他REST服务所需的一切。 接下来几篇我对 Perfect 框架进行记录。感兴趣的可以看: Swift Perfect - Ubuntu 服务器部署 Swift Perfect - 七牛上传文件 Swift Perfect - iOS消息推送(APN
注意:appuploader并不是免费的,他只可以试用一个月,一个月之后可以点击激活进行付费
公司采用AppCan平台开发了移动端应用,由于公司没有配备苹果电脑,所以为了上线iosAPP查了很多资料,装了个虚拟机卡的要死,操作一步卡死半天,严重影响效率,最后终于发现了一个很好用的工具AppUploader。终于解决了这个问题。不用苹果电脑直接在windows下上传ipa到appstore,废话不多说直接讲怎么操作。
即时通讯中需要对离线消息进行接收,此时就需要离线推送即当应用没有退出登录的情况下,被系统或者用户杀掉进程仍然能收到IMSDK消息提醒。云通讯iOS客户端采用的是APNs推送服务,以下提供整个处理流程及参考代码。
网络罪犯分子一直在尝试一种新的分发恶意软件的方法:通过含有指向恶意软件的“安装(推荐)”按钮的过期安全证书虚假警报。
从图中可以很清楚的看出来推送的原理主要分为以下几步: 1.由App向iOS设备发送一个注册通知,用户需要同意系统发送推送。 2.iOS向APNs远程推送服务器发送App的Bundle Id和设备的UDID。 3.APNs根据设备的UDID和App的Bundle Id生成deviceToken再发回给App。 4.App再将deviceToken发送给远程推送服务器(自己的服务器), 由服务器保存在数据库中。 5.当自己的服务器想发送推送时, 在远程推送服务器中输入要发送的消息并选择发给哪些用户的deviceToken,由远程推送服务器发送给APNs。 6.APNs根据deviceToken发送给对应的用户。 · APNs 服务器就是苹果专门做远程推送的服务器。 ·deviceToken是由APNs生成的一个专门找到你某个手机上的App的一个标识码。 · deviceToken 可能会变,如果你更改了你项目的bundle Identifier或者APNs服务器更新了可能会变。
1.本文详细介绍最新的在windows上进行ios app开发编译打包安装到手机测试的完整流程。介绍ios开发经常遇到的问题和解
公司采用AppCan平台开发了移动端应用,由于公司没有配备苹果电脑,所以为了上线iosAPP查了很多资料,装了个虚拟机卡的要死,操作一步卡死半天,严重影响效率,最后终于发现了一个很好用的工具AppUploader。终于解决了这个问题。不用苹果电脑直接在windows下上传ipa到appstore,废话不多说直接讲怎么操作
MDM - Moblie Device Management 移动设备管理,目的就是让企业能够方便的管理 iPhone、Pad等移动设备。
提示出现位置是在设置推送Token的时候出现的: V2TIMAPNSConfig *confg = [[V2TIMAPNSConfig alloc] init]; confg.businessID = sdkBusiId; confg.token = self.deviceToken; [[V2TIMManager sharedInstance] setAPNS:confg succ:^{ NSLog(@"-----> 设置 APNS 成功"); } fail:^(int code, NSString
前段时间开发的一套APNS推送平台效率很差,通过再次深入研究苹果的消息推送服务,总结了不少经验。同时也参考了网上一些技术blog的博文,重新完善了此前写过的一个PHP类,代码如下:
作者:allenzzhao,腾讯 IEG运营开发工程师 消息推送我们几乎每天都会用到,但你知道iOS中的消息推送是如何实现的吗?本文将从推送权限申请,到本地和远程消息推送,再到App对推送消息的处理等多个步骤,详细介绍iOS中消息推送的工作流程。 1、概述 消息推送是一种App向用户传递信息的重要方式,无论App是否正在运行,只要用户打开了通知权限就能够收到推送消息。开发者通过调用iOS系统方法就可以发起本地消息推送,例如我们最常见的闹钟应用,App能够根据本地存储的闹钟信息直接发起本地通知,因此即
领取专属 10元无门槛券
手把手带您无忧上云