CN103532972A - 针对ios的***app后台运行的方法 - Google Patents
针对ios的***app后台运行的方法 Download PDFInfo
- Publication number
- CN103532972A CN103532972A CN201310509258.XA CN201310509258A CN103532972A CN 103532972 A CN103532972 A CN 103532972A CN 201310509258 A CN201310509258 A CN 201310509258A CN 103532972 A CN103532972 A CN 103532972A
- Authority
- CN
- China
- Prior art keywords
- business
- wing
- client
- music
- app
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及针对IOS的***APP后台运行的方法,商擎服务器与商翼客户端建立长连接,通过谷歌protocolbuffer协议推送tcp命令,接收商翼客户端请求,根据请求发送处理请求,发送激活命令到商翼客户端,接收套接字后,进行逆解析,收到命令后停止播放后台音乐;商翼客户端接收到商擎服务器端发送的激活命令请求,开启APP程序,在APP中设置无声音乐,设置混音,播放无声音乐,触发回调函数,APP在后台长期运行;根据商翼客户端,设置无声音乐,获得音频文件,将参数Vollumn设置为0,初始化回调,触发扬声器,播放无声音乐。针对IOS***实现APP后台运行,完成APP后台下载、后台语音邮件收发功能。
Description
技术领域
本发明涉及一种针对IOS的***APP后台运行的方法。
背景技术
目前,传统的IOS***中的APP顺序进入后台,就会进入挂起状态,程序不在运行,当前状态变量被保存。资源被释放,再次点击其他应用程序时,***可以用全部资源去立刻响应其他应用程序,所以在IOS***中打开应用程序的速度特别快,但这也会给许多APP带来一系列弊端。比如,语音通话软件,P2P下载类软件(在后台下载电影等等)。因为用户不可能一直保持手机屏幕亮着,让APP始终处于前台,活着的状态。所以,普通情况下,APP进入后台或者自动锁屏后,资源被释放。也就是说语音电话软件再也接不到电话,后台下载类软件下载到一半也会停止。
苹果给出的官方解决方案是,苹果的APNS服务器推送,只需要给苹果服务器发送一个push通知,苹果的APNS服务器就能找到世界上任何一台联网的苹果设备,并发出这条push通知,类似效果可参考 QQ在后台会有一个白条的推送通知。这种解决方案存在两个最大的问题,其一,时效性,这个通知由苹果服务器发给设备,可能需要5秒,也可能需要20-30秒,对于语音通话软件,这个时间几乎已经超过呼叫方的挂断时间,其二,不稳定性,苹果官方文档明确说明push通知是不可靠,并且容易丢包。
基于上述问题,需要研发一种新的APP后台运行机制,能够保持住App,即使进入后台,也可以运行,不受***的限制。
发明内容
本发明的目的是克服现有技术存在的不足,提供一种针对IOS的***APP后台运行的方法。
针对IOS的***APP后台运行的方法,包括以下步骤:
1)首先,商擎服务器与商翼客户端建立一长连接,通过谷歌protocol buffer协议推送一个tcp命令,并接收商翼客户端的请求,根据商翼客户端的请求,并发送处理请求,然后发送激活命令到商翼客户端,商翼客户端接收到套接字后,进行逆解析,收到命令后停止播放后台音乐;
2)商翼客户端在接收到商擎服务器端发送的激活命令请求,开启APP程序,在APP中设置无声音乐,然后设置混音,播放无声音乐,触发回调函数,最后APP在后台长期运行;
3)根据商翼客户端,设置无声音乐,获得音频文件,将参数Vollumn设置为0,初始化回调,触发扬声器,播放无声音乐。
进一步地,上述的针对IOS的***APP后台运行的方法,商翼客户端与后台商擎服务器维持TCP长连接,何时有未接来电、未读新邮件、新消息,实现ios后台之后,通过与商擎服务器发送的指令相关联,实现后台功能。
更进一步地,上述的针对IOS的***APP后台运行的方法,所述设置无声音乐包括以下步骤:
1)准备无声的音乐文件;
2)初始化一个音频播放器,AVAudioPlayer,并设置音量为0;
3)设置音频接收的回调函数,并且设置混音属性,即不受其他占用音频的app所干扰;
4)开始播放音乐;
5)音乐播放完成后,进入所设置的回调函数中,再继续播放,形成一个循环。
再进一步地,上述的针对IOS的***APP后台运行的方法,所述音乐文件为slience.mp3 。
再进一步地,上述的针对IOS的***APP后台运行的方法,所述回调函数是一个通过函数指针调用的函数。
再进一步地,上述的针对IOS的***APP后台运行的方法,函数的指针地址作为参数传递给另一个函数,当这个指针被用为调用其所指向的函数时,即是回调函数;回调函数不由该函数的实现方直接调用,而是在事件或条件发生时由另外的一方调用,用于对事件或条件进行响应,为接收音频播放完后,进入代码的一个执行点。
本发明技术方案突出的实质性特点和显著的进步主要体现在:
本发明针对IOS的***实现APP在后台运行,实现新的后台机制,保持住App,即使进入后台,也可以运行,不受***的限制。响应速度快,稳定性好,可以通过本地推送通知,更好的完成APP的后台下载、后台语音、后台邮件收发等功能,具有优越的即时性、较强的扩展性和单向性。
附图说明
下面结合附图对本发明技术方案作进一步说明:
图1:本发明的流程示意图;
图2:设置无声音乐的流程示意图。
具体实施方式
如图1所示,针对IOS的***APP后台运行的方法,具体步骤为:
1)首先,商擎服务器与商翼客户端建立一长连接,通过谷歌protocol buffer协议推送一个tcp命令,并接收商翼客户端的请求,根据商翼客户端的请求,并发送处理请求,然后发送激活命令到商翼客户端,商翼客户端接收到套接字后,可进行逆解析,收到命令后停止播放后台音乐;比如:(void)sendGetAddrLikeTcpSocket
{
[self initContactSocket];
GetAddrLike_RpcRequest *request = [[[GetAddrLike_RpcRequest builder] clear] build];
NSData *sendData = [request data];
NSMutableData *lastSendData = [app packageWithEwdrpc:sendData method:"GetAddrLike" rpcType:1];
[contactSocket readDataWithTimeout:2.0 tag:KGetAddrLikeTcpSocket];
[contactSocket writeData:lastSendData withTimeout:2.0f tag:KGetAddrLikeTcpSocket];
}
获取好友列表一个tcp命令。
2)商翼客户端在接收到商擎服务器端发送的激活命令请求,开启APP程序,在APP中设置无声音乐,然后设置混音,播放无声音乐,触发回调函数,最后APP在后台长期运行;
设置voip socket,为语音通话的socket通道设置此属性,因为即使通话过程中,用户锁屏或者退入后台或者自动锁屏,该通话均不会被***杀死释放;在后台每隔60秒 播放一段0.1秒的无声音乐,这是为了告诉***,当前正在播放音乐,就算进入后台也不要把其释放掉;app在后台可以运行,又不断会播放音乐,所以非常可能影响其他的音乐类软件,导致大家互抢音频资源,容易出现的情况是,用户将app进入后台,并去播放其他音乐,当到达60秒间隔时间后,播放无声音乐,此时音频资源被app抢占,其他播放音乐的软件会被暂停。而通过设置混音,使得app可以和其他音乐共存,并且是无声音乐,因此用户感受不到在播放过程中存在任何别的杂音。app就可以完成后台运行,也可以接收到用户的电话,接收邮件。
3)根据商翼客户端,设置无声音乐,获得音频文件,将参数Vollumn设置为0,初始化回调,触发扬声器,播放无声音乐。
商翼客户端始终与后台商擎服务器维持TCP长连接,何时有未接来电、未读新邮件、新消息等等,实现ios后台之后,通过与商擎服务器发送的指令相关联,从而实现真正意义的后台功能。
如图2所示,设置无声音乐的具体步骤:
1)准备一份无声的音乐文件,如为slience.mp3;
2)初始化一个音频播放器,AVAudioPlayer,并设置音量为0;
3)设置这个音频接收的回调函数,并且设置混音属性,即不受其他占用音频的app所干扰;
4)开始播放音乐;
5)音乐播放完成后,进入所设置的回调函数中,再继续播放,形成一个循环。
回调函数是一个通过函数指针调用的函数,将函数的指针地址作为参数传递给另一个函数,当这个指针被用为调用其所指向的函数时,即是回调函数;回调函数不由该函数的实现方直接调用,而是在事件或条件发生时由另外的一方调用,用于对事件或条件进行响应,为接收音频播放完后,进入代码的一个执行点。
综上所述,本发明针对IOS的***实现APP在后台运行,实现新的后台机制,保持住App,即使进入后台,也可以运行,不受***的限制。响应速度快,稳定性好,可以通过本地推送通知,更好的完成APP的后台下载、后台语音、后台邮件收发等功能,具有优越的即时性、较强的扩展性和单向性。
需要理解到的是:以上所述仅是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.针对IOS的***APP后台运行的方法,其特征在于包括以下步骤:
1)首先,商擎服务器与商翼客户端建立一长连接,通过谷歌protocol buffer协议推送一个tcp命令,并接收商翼客户端的请求,根据商翼客户端的请求,并发送处理请求,然后发送激活命令到商翼客户端,商翼客户端接收到套接字后,进行逆解析,收到命令后停止播放后台音乐;
2)商翼客户端在接收到商擎服务器端发送的激活命令请求,开启APP程序,在APP中设置无声音乐,然后设置混音,播放无声音乐,触发回调函数,最后APP在后台长期运行;
3)根据商翼客户端,设置无声音乐,获得音频文件,将参数Vollumn设置为0,初始化回调,触发扬声器,播放无声音乐。
2.根据权利要求1所述的针对IOS的***APP后台运行的方法,其特征在于:所述商翼客户端与后台商擎服务器维持TCP长连接,何时有未接来电、未读新邮件、新消息,实现ios后台之后,通过与商擎服务器发送的指令相关联,实现后台功能。
3.根据权利要求1所述的针对IOS的***APP后台运行的方法,其特征在于:所述设置无声音乐包括以下步骤:
1)准备无声的音乐文件;
2)初始化一个音频播放器,AVAudioPlayer,并设置音量为0;
3)设置音频接收的回调函数,并且设置混音属性,即不受其他占用音频的app所干扰;
4)开始播放音乐;
5)音乐播放完成后,进入所设置的回调函数中,再继续播放,形成一个循环。
4.根据权利要求3所述的针对IOS的***APP后台运行的方法,其特征在于:所述音乐文件为slience.mp3 。
5.根据权利要求1或3所述的针对IOS的***APP后台运行的方法,其特征在于:所述回调函数是一个通过函数指针调用的函数。
6.根据权利要求5所述的针对IOS的***APP后台运行的方法,其特征在于:将函数的指针地址作为参数传递给另一个函数,当这个指针被用为调用其所指向的函数时,即是回调函数;回调函数不由该函数的实现方直接调用,而是在事件或条件发生时由另外的一方调用,用于对事件或条件进行响应,为接收音频播放完后,进入代码的一个执行点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310509258.XA CN103532972B (zh) | 2013-10-25 | 2013-10-25 | 针对ios的***app后台运行的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310509258.XA CN103532972B (zh) | 2013-10-25 | 2013-10-25 | 针对ios的***app后台运行的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103532972A true CN103532972A (zh) | 2014-01-22 |
CN103532972B CN103532972B (zh) | 2017-01-18 |
Family
ID=49934651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310509258.XA Active CN103532972B (zh) | 2013-10-25 | 2013-10-25 | 针对ios的***app后台运行的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103532972B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761333A (zh) * | 2014-02-14 | 2014-04-30 | 北京中文在线数字出版股份有限公司 | 一种无线txt阅读器及其阅读方法 |
CN103916405A (zh) * | 2014-04-25 | 2014-07-09 | 厦门享游网络科技有限公司 | 一种IOS上针对App的TCP/UDP流量引导的方法 |
CN104199632A (zh) * | 2014-08-04 | 2014-12-10 | 百度在线网络技术(北京)有限公司 | 一种用于确定声效设置的方法和装置 |
CN105335242A (zh) * | 2015-11-02 | 2016-02-17 | 传线网络科技(上海)有限公司 | Ios***中后台下载视频文件的方法及*** |
CN105760185A (zh) * | 2014-12-19 | 2016-07-13 | 北京奇虎科技有限公司 | 应用的后台运行方法及装置 |
CN106126355A (zh) * | 2016-06-22 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 基于iOS***的事件传递方法和装置 |
CN107995273A (zh) * | 2017-11-27 | 2018-05-04 | 北京酷我科技有限公司 | 一种iOS网络管理策略 |
CN109495549A (zh) * | 2018-10-30 | 2019-03-19 | 上海连尚网络科技有限公司 | 一种应用拉活的方法、设备和计算机存储介质 |
CN109714640A (zh) * | 2017-10-26 | 2019-05-03 | 创盛视联数码科技(北京)有限公司 | 播放直播视频的方法 |
CN111176809A (zh) * | 2019-12-18 | 2020-05-19 | 任子行网络技术股份有限公司 | 安卓平台下含长连接通讯进程的应用保活处理方法及*** |
CN111538541A (zh) * | 2019-12-06 | 2020-08-14 | 杭州当虹科技股份有限公司 | 一种让Android App长期稳定后台运行的方法 |
CN112445539A (zh) * | 2019-09-02 | 2021-03-05 | 珠海市魅族科技有限公司 | 识别伪装音乐播放的方法、装置、电子设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120203880A1 (en) * | 2011-02-03 | 2012-08-09 | Odyssey Software, Inc. | Method and system for establishing a dlp-compliant environment |
-
2013
- 2013-10-25 CN CN201310509258.XA patent/CN103532972B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120203880A1 (en) * | 2011-02-03 | 2012-08-09 | Odyssey Software, Inc. | Method and system for establishing a dlp-compliant environment |
Non-Patent Citations (1)
Title |
---|
IOS开发者博客: "实现iOS长时间后台的两种方法:Audiosession和VOIP", 《COCOA CHINA苹果开发中文站 业界动态 HTTP://WWW.COCOACHINA.COM/INDUSTRY/20121212/5313.HTML》, 12 December 2012 (2012-12-12) * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761333A (zh) * | 2014-02-14 | 2014-04-30 | 北京中文在线数字出版股份有限公司 | 一种无线txt阅读器及其阅读方法 |
CN103916405A (zh) * | 2014-04-25 | 2014-07-09 | 厦门享游网络科技有限公司 | 一种IOS上针对App的TCP/UDP流量引导的方法 |
CN103916405B (zh) * | 2014-04-25 | 2017-02-22 | 厦门享游网络科技有限公司 | 一种IOS上针对App的TCP/UDP流量引导的方法 |
CN104199632A (zh) * | 2014-08-04 | 2014-12-10 | 百度在线网络技术(北京)有限公司 | 一种用于确定声效设置的方法和装置 |
CN105760185A (zh) * | 2014-12-19 | 2016-07-13 | 北京奇虎科技有限公司 | 应用的后台运行方法及装置 |
CN105335242A (zh) * | 2015-11-02 | 2016-02-17 | 传线网络科技(上海)有限公司 | Ios***中后台下载视频文件的方法及*** |
CN105335242B (zh) * | 2015-11-02 | 2019-03-26 | 传线网络科技(上海)有限公司 | Ios***中后台下载视频文件的方法及*** |
CN106126355A (zh) * | 2016-06-22 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 基于iOS***的事件传递方法和装置 |
CN109714640A (zh) * | 2017-10-26 | 2019-05-03 | 创盛视联数码科技(北京)有限公司 | 播放直播视频的方法 |
CN107995273B (zh) * | 2017-11-27 | 2021-02-09 | 北京酷我科技有限公司 | 一种iOS网络管理方法 |
CN107995273A (zh) * | 2017-11-27 | 2018-05-04 | 北京酷我科技有限公司 | 一种iOS网络管理策略 |
CN109495549A (zh) * | 2018-10-30 | 2019-03-19 | 上海连尚网络科技有限公司 | 一种应用拉活的方法、设备和计算机存储介质 |
CN109495549B (zh) * | 2018-10-30 | 2021-07-20 | 上海尚往网络科技有限公司 | 一种应用拉活的方法、设备和计算机存储介质 |
CN112445539A (zh) * | 2019-09-02 | 2021-03-05 | 珠海市魅族科技有限公司 | 识别伪装音乐播放的方法、装置、电子设备和存储介质 |
CN111538541A (zh) * | 2019-12-06 | 2020-08-14 | 杭州当虹科技股份有限公司 | 一种让Android App长期稳定后台运行的方法 |
CN111176809A (zh) * | 2019-12-18 | 2020-05-19 | 任子行网络技术股份有限公司 | 安卓平台下含长连接通讯进程的应用保活处理方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN103532972B (zh) | 2017-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103532972A (zh) | 针对ios的***app后台运行的方法 | |
JP6352961B2 (ja) | インスタントメッセージにおけるトピックに基づく分離のためのシステム及び方法 | |
US9501259B2 (en) | Audio output device to dynamically generate audio ports for connecting to source devices | |
US7313134B2 (en) | Proxy server for relaying VOIP messages | |
US10264130B2 (en) | Integrated visual voicemail communications | |
CN110602681B (zh) | 信息处理方法和电子设备 | |
GB0408676D0 (en) | A data access,replication or communication system comprising a distributed software application | |
CN110164437A (zh) | 一种即时通信的语音识别方法和终端 | |
EP2083606A3 (en) | Multi-standby mobile terminal and host function providing method for the same | |
CN103761123B (zh) | 功能启动方法、装置及终端 | |
US20130176865A1 (en) | Counteracting Spam in Voice Over Internet Protocol Telephony Systems | |
US9693230B2 (en) | Providing a masked short message service in a wireless network | |
CN104579712A (zh) | 碎片化异步会议***会议成员发布文字信息的方法 | |
WO2014180245A1 (zh) | 云终端升级处理方法及装置 | |
CN103297522A (zh) | 基于无线局域网使用对等网络技术资源分享的方法 | |
WO2016150333A1 (zh) | 实现语音信箱***与融合通信***互通的方法和*** | |
WO2011134256A1 (zh) | 一种移动终端中并发冲突的处理方法及装置 | |
WO2014187397A1 (zh) | 多媒体消息的发布方法及装置 | |
AU2014353075B2 (en) | Method and system for universal chat gateways | |
CN104580778A (zh) | 碎片化异步会议***会议成员发布图片信息的方法 | |
WO2011103739A1 (zh) | 手机会议电话中信息共享的方法、用于手机会议电话***的主控方及辅控方 | |
CN102932214A (zh) | 一种家庭网络异构媒体设备的发现聚合方法 | |
WO2018099284A1 (zh) | 通讯方法及装置 | |
WO2012028062A1 (zh) | 一种在呼叫过程中传输即时信息的方法及*** | |
EP2579526B1 (en) | Methods and devices for uniform number communication on a home gateway |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170714 Address after: The streets of Shenzhen city in Guangdong province 518057 Keyuan Road No. 15 Nanshan District Guangdong Kexing Science Park building B4 room 1102 Patentee after: SHENZHEN DANALE TECHNOLOGY CO., LTD. Address before: Suzhou City, Jiangsu province 215021 Xinghu Park Street No. 328 Creative Industry Park 3-B302 unit Patentee before: Suzhou Dana Information Technology Co., Ltd. |
|
TR01 | Transfer of patent right |