CN107943494A - 多渠道应用分发方法及移动终端 - Google Patents
多渠道应用分发方法及移动终端 Download PDFInfo
- Publication number
- CN107943494A CN107943494A CN201710658099.8A CN201710658099A CN107943494A CN 107943494 A CN107943494 A CN 107943494A CN 201710658099 A CN201710658099 A CN 201710658099A CN 107943494 A CN107943494 A CN 107943494A
- Authority
- CN
- China
- Prior art keywords
- apk file
- channel information
- channel
- duplication
- mobile terminal
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 239000000284 extract Substances 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims description 10
- 230000003362 replicative effect Effects 0.000 claims description 4
- 238000009434 installation Methods 0.000 abstract description 16
- 230000000694 effects Effects 0.000 abstract description 8
- 238000002347 injection Methods 0.000 abstract description 7
- 239000007924 injection Substances 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 22
- 230000006854 communication Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 230000010076 replication Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000009527 percussion Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种多渠道应用分发方法,所述方法包括:获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;获取待发布的APK文件;将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。本发明还提供一种移动终端及计算机可读存储介质。本发明提供的移动终端、多渠道应用分发方法及计算机可读存储介质通过多渠道进行应用分发的方式,能够提升注入渠道号的执行效率,提升并发情况下的分发效率,同时对原有APK包的签名,安装等操作无任何影响。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种多渠道应用分发方法及移动终端。
背景技术
Android开源模式就吸引了大量的品牌和用户,基于Android的应用程序的发展也越来越多。目前市场上存在非常多的应用程序下载市场,如google play,安智市场,91助手,豌豆荚等,当某个应用程序发新版本时,开发者需要将应用程序分发到各个应用市场。为了统计这些市场活跃数,下载量等市场效果,需要有一种方法来唯一标识它们。
目前,应用程序通过渠道号(channel)来区分不同的市场。发布到各种市场的应用程序安装包中,包含一个channel变量记录该渠道号,比如,某一应用程序在豌豆荚市场中应用的渠道号是wandoujia,在360手机助手渠道号为360_zhushou。客户端访问API时会在请求参数中带上渠道号,以便后台接下来计算不同渠道的效果,例如统计哪些市场带来的用户量比较大或者可能有一些盈利需要和具体的渠道进行分成。每次发版时,应用程序工程师会根据市场部提供的渠道列表生成等量的渠道包。
而目前对应用程序注入渠道号的方式一般是将渠道号写入apk的配置文件,再打包。但这种方式设置渠道号需要解包、写入文件、打包等过程,这个过程非常耗费系统资源,打包时效无法满足实际需求。特别是随着渠道的越来越多,这种问题则会越来越严重。
发明内容
有鉴于此,本发明提出一种多渠道应用分发方法及移动终端,能够提升注入渠道号的执行效率,提升并发情况下的分发效率,同时对原有APK包的签名,安装等操作无任何影响。
首先,为实现上述目的,本发明提出一种移动终端,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多渠道应用分发程序,所述多渠道应用分发程序被所述处理器执行时实现如下步骤:
获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;
获取待发布的APK文件;
将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;
从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及
将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
可选地,所述多渠道应用分发程序被所述处理器执行时还实现如下步骤:
侦测所述待发布的APK文件版本是否更新;及
当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。
可选地,所述将所述待发布的APK文件复制的步骤,具体包括:
从预设渠道信息列表中遍历所有渠道信息;
提取所述渠道信息列表中表征所述所有渠道信息总数的数字;及
将所述待发布的APK文件复制成大于或者等于所述数字的份数。
可选地,所述对所述所有渠道信息进行编号的步骤,具体包括:
用字符串或者数字对所述渠道信息的编号进行命名;及
通过预设的加密算法对所述渠道信息的编号进行加密。
可选地,所述并将渠道信息的编号写入所述复制的APK文件的步骤,具体包括:
将加密后的渠道信息的编号写入所述复制的APK文件的文件描述字段。
此外,为实现上述目的,本发明还提供一种多渠道应用分发方法,该方法应用于移动终端,所述方法包括:
获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;
获取待发布的APK文件;
将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;
从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及
将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
可选地,所述方法还包括:
侦测所述待发布的APK文件版本是否更新;及
当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。
可选地,所述将所述待发布的APK文件复制的步骤,具体包括:
从预设渠道信息列表中遍历所有渠道信息;
提取所述渠道信息列表中表征所述所有渠道信息总数的数字;及
将所述待发布的APK文件复制成大于或者等于所述数字的份数。
可选地,所述对所述所有渠道信息进行编号的步骤,具体包括:
用字符串或者数字对所述渠道信息的编号进行命名;及
通过预设的加密算法对所述渠道信息的编号进行加密。
可选地,所述并将渠道信息的编号写入所述复制的APK文件的步骤,具体包括:
将加密后的渠道信息的编号写入所述复制的APK文件的文件描述字段。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多渠道应用分发程序,所述多渠道应用分发程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的多渠道应用分发方法的步骤。
相较于现有技术,本发明所提出的移动终端、多渠道应用分发方法及计算机可读存储介质,首先获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;然后,获取待发布的APK文件;接着,将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;以及,从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;最后,将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。这样,能够通过多渠道进行应用分发的方式,能够提升注入渠道号的执行效率,提升并发情况下的分发效率,同时对原有APK包的签名,安装等操作无任何影响。
附图说明
图1是实现本发明各个实施例的一种移动终端的硬件结构示意图;
图2是本发明实施例提供的一种通信网络系统架构图;
图3是本发明多渠道应用分发程序第一及第二实施例的功能模块示意图;
图4是本发明多渠道应用分发程序第三实施例的功能模块示意图;
图5为本发明多渠道应用分发方法第一实施例的实施流程示意图;
图6为本发明多渠道应用分发方法第二实施例的实施流程示意图;
图7为本发明多渠道应用分发方法第三实施例的实施流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:RF(Radio Frequency,射频)单元101、WiFi模块102、音频输出单元103、A/V(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对移动终端的各个部件进行具体的介绍:
射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA2000(CodeDivision Multiple Access 2000,码分多址2000)、WCDMA(Wideband Code DivisionMultiple Access,宽带码分多址)、TD-SCDMA(Time Division-Synchronous CodeDivision Multiple Access,时分同步码分多址)、FDD-LTE(Frequency DivisionDuplexing-Long Term Evolution,频分双工长期演进)和TDD-LTE(Time DivisionDuplexing-Long Term Evolution,分时双工长期演进)等。
WiFi属于短距离无线传输技术,移动终端100通过WiFi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了WiFi模块102,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或WiFi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。
A/V输入单元104用于接收音频或视频信号。A/V输入单元104可以包括图形处理器(Graphics Processing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或WiFi模块102进行发送。麦克风1042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风1042接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。麦克风1042可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。
移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、图像感测器、红外线传感器等其他传感器,在此不再赘述。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1061。
用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。
进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。
接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器110是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。
为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。
请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的LTE系统,该LTE系统包括依次通讯连接的UE(User Equipment,用户设备)201,E-UTRAN(Evolved UMTS Terrestrial Radio Access Network,演进式UMTS陆地无线接入网)202,EPC(Evolved Packet Core,演进式分组核心网)203和运营商的IP业务204。
具体地,UE201可以是上述终端100,此处不再赘述。
E-UTRAN202包括eNodeB2021和其它eNodeB2022等。其中,eNodeB2021可以通过回程(backhaul)(例如X2接口)与其它eNodeB2022连接,eNodeB2021连接到EPC203,eNodeB2021可以提供UE201到EPC203的接入。
EPC203可以包括MME(Mobility Management Entity,移动性管理实体)2031,HSS(Home Subscriber Server,归属用户服务器)2032,其它MME2033,SGW(Serving Gate Way,服务网关)2034,PGW(PDN Gate Way,分组数据网络网关)2035和PCRF(Policy andCharging Rules Function,政策和资费功能实体)2036等。其中,MME2031是处理UE201和EPC203之间信令的控制节点,提供承载和连接管理。HSS2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过SGW2034进行发送,PGW2035可以提供UE 201的IP地址分配以及其它功能,PCRF2036是业务数据流和IP承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。
IP业务204可以包括因特网、内联网、IMS(IP Multimedia Subsystem,IP多媒体子系统)或其它IP业务等。
虽然上述以LTE系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于LTE系统,也可以适用于其他无线通信系统,例如GSM、CDMA2000、WCDMA、TD-SCDMA以及未来新的网络系统等,此处不做限定。
基于上述移动终端100硬件结构以及通信网络系统,提出本发明方法各个实施例。
首先,本发明提出一种多渠道应用分发程序300。
参阅图3所示,是本发明多渠道应用分发程序300第一实施例的功能模块图。本实施例中,所述的多渠道应用分发程序300可以被分割成一个或多个模块,所述一个或者多个模块被存储于所述移动终端100的存储器109中,并由一个或多个处理器(本实施例中为所述处理器110)所执行,以完成本发明。例如,在图3中,所述的多渠道应用分发程序300可以被分割成第一获取模块301、编号模块302、第二获取模块303、复制模块304、提取处理模块305以及推送模块306。本发明所称的功能模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述多渠道应用分发程序300在所述移动终端100中的执行过程。以下将就各功能模块301-305的功能进行详细描述。
所述第一获取模块301,用于获取应用程序的所有渠道信息。
所述编号模块302用于,对所述第一获取模块301获取的所有渠道信息进行编号。
在本实施方式中,所述第一获取模块301从预设的所述渠道列表中遍历读取每一条渠道信息,直至所有的渠道信息都被读取。得到所述渠道信息后,对所述每个所述渠道信息进行编号。所述预设的渠道列表可以为豌豆荚、应用市场、应用商店、App store或者其他预设的渠道,本文对此并不作限定。例如,一个应用程序通过“91助手”这一渠道进行发布,则可以91来编号其对应的所述渠道信息。
进一步地,为了增加渠道信息的保密性,所述编号模块302通过以下方式对所述所有渠道信息进行编号:
第一,所述编号模块302用字符串或者数字对所述渠道信息的编号进行命名。例如,91助手这一渠道的临时渠道文件可以命名为channel1等。
第二,所述编号模块302通过预设的加密算法对所述渠道信息的编号进行加密。所述加密算法根据开发者需要选择,本文不再详述。
所述第二获取模块303,用于获取待发布的APK文件。APK是Android Package的缩写,即Android安装包。
所述复制模块304,用于将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端100的缓存空间中。
所述提取处理模块305,用于从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件。
进一步地,提取处理模块305直接将加密后的渠道信息的编号写入所述复制的APK文件的文件描述(File Comment)字段。这样可以只需要读取复制的APK文件的字节就能获取渠道号,增加了执行效率。
所述推送模块306,用于将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
通过上述功能模块301-306,本发明所提出的多渠道应用分发程序300,首先,所述移动终端100获取应用程序的所有渠道信息,对所述所有渠道信息进行编号,其次,获取待发布的APK文件,接着,将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;以及从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;最后将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。所述移动终端100通过多渠道进行应用分发的方式,能够提升注入渠道号的执行效率,提升并发情况下的分发效率,同时对原有APK包的签名,安装等操作无任何影响。
进一步地,基于本发明多渠道应用分发程序300的上述第一实施例,提出本发明的第二实施例(如图3所示)。本实施例中,所述复制模块304还用于:
从预设渠道信息列表中遍历所有渠道信息;提取所述渠道信息列表中表征所述所有渠道信息总数的数字;及将所述待发布的APK文件复制成大于或者等于所述数字的份数。
例如,本实施例中,复制模块304将所述待发布的APK文件复制成N份,其中N大于等于表征所述所有渠道信息总数的数字M。同时,复制模块303将N份复制的待发布的APK文件存放至移动终端100的缓存空间中。
由于复制模块304将所述待发布的APK文件复制成N份,其中N大于等于表征所述所有渠道信息总数的数字M。进而保证每一个渠道信息编号都写入了一个待发布的APK文件。在本实施方式中,Android应用使用的APK文件就是一个带签名信息的ZIP文件,根据ZIP文件格式规范,每个ZIP文件的最后都必须有一个叫Central Directory Record的部分,这个CDR的最后部分叫"end of central directory record",这一部分包含一些元数据,它的末尾是ZIP文件的注释。注释包含Comment Length和文件描述File Comment两个字段,前者表示注释内容的长度,后者是注释的内容,正确修改这一部分不会对ZIP文件造成破坏。因此可以利用这个字段添加一些自定义的数据到Android安装包.apk文件中,且不会对Android安装包造成破坏。并且可以在Android安装包安装后读取写入的数据。
通过上述功能模块304,本发明所提出的多渠道应用分发程序300,能够保证所有的渠道信息编号都写入到待发布的APK文件,因此可以做到多渠道并发,提升分发效率,同时对原有APK包的签名,安装等操作无任何影响。
进一步地,基于本发明多渠道应用分发程序300的上述第一实施例,提出本发明的第三实施例(如图4所示)。本实施例中,所述的多渠道应用分发程序300还包括清除模块307,其中:
所述清除模块307用于:侦测所述待发布的APK文件版本是否更新;及当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。
本实施例中,当待发布的APK文件后续再次出现更新版本后,清除模块307自动清除所述移动终端100的缓存空间中的所述N份复制的APK文件。
通过上述功能模块307,本发明所提出的多渠道应用分发程序300,通过侦测所述待发布的APK文件版本是否更新;及当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。能够清除缓存,提升注入渠道号的执行效率。
此外,本发明还提出一种多渠道应用分发方法。
参阅图5所示,是本发明多渠道应用分发方法第一实施例的实施流程示意图。在本实施例中,根据不同的需求,图5所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
步骤S501,获取应用程序的所有渠道信息。
在本实施方式中,所述移动终端100从预设的所述渠道列表中遍历读取每一条渠道信息,直至所有的渠道信息都被读取。
步骤S502,对所述所有渠道信息进行编号。
当所述移动终端100得到所述渠道信息后,对所述每个所述渠道信息进行编号。所述预设的渠道列表可以为豌豆荚、应用市场、应用商店、App store或者其他预设的渠道,本文对此并不作限定。例如,一个应用程序通过“91助手”这一渠道进行发布,则可以91来编号其对应的所述渠道信息。
进一步地,为了增加渠道信息的保密性,所述移动终端100通过以下方式对所述所有渠道信息进行编号:
第一,所述移动终端100用字符串或者数字对所述渠道信息的编号进行命名。例如,91助手这一渠道的临时渠道文件可以命名为channel1等。
第二,所述移动终端100通过预设的加密算法对所述渠道信息的编号进行加密。所述加密算法根据开发者需要选择,本文不再赘述。
步骤S503,获取待发布的APK文件。APK是Android Package的缩写,即Android安装包。
步骤S504,将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中。所述将所述待发布的APK文件复制的具体步骤将在下文(图7第三实施例)进行详述。
步骤S505,从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件。
进一步地,所述移动终端100直接将加密后的渠道信息的编号写入所述复制的APK文件的文件描述(File Comment)字段。这样可以只需要读取复制的APK文件的字节就能获取渠道号,增加了执行效率。
步骤S506,将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
具体地,所述移动终端100获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;获取待发布的APK文件;将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
通过上述步骤S501-506,本发明所提出的多渠道应用分发方法,首先,获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;其次,获取待发布的APK文件;将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;接着,从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;最后,将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。所述移动终端100通过多渠道进行应用分发的方式,能够提升注入渠道号的执行效率,提升并发情况下的分发效率,同时对原有APK包的签名,安装等操作无任何影响。
基于本发明多渠道应用分发方法的上述第一实施例,提出本发明多渠道应用分发方法的第二实施例。
如图6所示,是本发明多渠道应用分发方法的第二实施例的实施流程示意图。在本实施例中,根据不同的需求,图6所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
步骤S601,获取应用程序的所有渠道信息。
在本实施方式中,所述移动终端100从预设的所述渠道列表中遍历读取每一条渠道信息,直至所有的渠道信息都被读取。
步骤S602,对所述所有渠道信息进行编号。
当所述移动终端100得到所述渠道信息后,对所述每个所述渠道信息进行编号。所述预设的渠道列表可以为豌豆荚、应用市场、应用商店、App store或者其他预设的渠道,本文对此并不作限定。例如,一个应用程序通过“91助手”这一渠道进行发布,则可以91来编号其对应的所述渠道信息。
进一步地,为了增加渠道信息的保密性,所述移动终端100通过以下方式对所述所有渠道信息进行编号:
第一,所述移动终端100用字符串或者数字对所述渠道信息的编号进行命名。例如,91助手这一渠道的临时渠道文件可以命名为channel1等。
第二,所述移动终端100通过预设的加密算法对所述渠道信息的编号进行加密。所述加密算法根据开发者需要选择,本文不再赘述。
步骤S603,获取待发布的APK文件。APK是Android Package的缩写,即Android安装包。
步骤S604,将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中。所述将所述待发布的APK文件复制的具体步骤将在下文(图7第三实施例)进行详述。
步骤S605,从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件。
进一步地,所述移动终端100直接将加密后的渠道信息的编号写入所述复制的APK文件的文件描述(File Comment)字段。这样可以只需要读取复制的APK文件的字节就能获取渠道号,增加了执行效率。
步骤S606,将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
步骤S607,侦测所述待发布的APK文件版本是否更新。
当所述待发布的APK文件版本出现更新版本时,执行步骤S608,否则执行步骤S607。
步骤S608,清除所述缓存空间中的所述复制的APK文件。本实施例中,当待发布的APK文件后续再次出现更新版本后,所述移动终端100自动清除缓存空间中的所述N份复制的APK文件。
通过上述步骤S601-S608,本发明所提出的多渠道应用分发方法,能够通过侦测所述待发布的APK文件版本是否更新;及当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。能够清除缓存,提升注入渠道号的执行效率。
如图7所示,是本发明多渠道应用分发方法的第三实施例的实施流程示意图。在本实施例中,所述将所述待发布的APK文件复制的步骤,具体包括:
步骤S701,从预设渠道信息列表中遍历所有渠道信息。
步骤S702,提取所述渠道信息列表中表征所述所有渠道信息总数的数字。
步骤S703,将所述待发布的APK文件复制成大于或者等于所述数字的份数。
例如,本实施例中,所述移动终端100将所述待发布的APK文件复制成N份,其中N大于等于表征所述所有渠道信息总数的数字M。同时,所述移动终端100将N份复制的待发布的APK文件存放至移动终端100的缓存空间中。
由于所述移动终端100将所述待发布的APK文件复制成N份,其中N大于等于表征所述所有渠道信息总数的数字M。进而保证每一个渠道信息编号都写入了一个待发布的APK文件。在本实施方式中,Android应用使用的APK文件就是一个带签名信息的ZIP文件,根据ZIP文件格式规范,每个ZIP文件的最后都必须有一个叫Central Directory Record的部分,这个CDR的最后部分叫"end of central directory record",这一部分包含一些元数据,它的末尾是ZIP文件的注释。注释包含Comment Length和文件描述File Comment两个字段,前者表示注释内容的长度,后者是注释的内容,正确修改这一部分不会对ZIP文件造成破坏。因此可以利用这个字段添加一些自定义的数据到Android安装包.apk文件中,且不会对Android安装包造成破坏。并且可以在Android安装包安装后读取写入的数据。
通过上述步骤S701-S703,本发明所提出的多渠道应用分发方法,能够保证所有的渠道信息编号都写入到待发布的APK文件,因此可以做到多渠道并发,提升分发效率,同时对原有APK包的签名,安装等操作无任何影响。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种多渠道应用分发方法,应用于移动终端,其特征在于,所述方法包括:
获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;
获取待发布的APK文件;
将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;
从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及
将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
2.如权利要求1所述的多渠道应用分发方法,其特征在于,所述方法还包括:
侦测所述待发布的APK文件版本是否更新;及
当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。
3.如权利要求1所述的多渠道应用分发方法,其特征在于,所述将所述待发布的APK文件复制的步骤,具体包括:
从预设渠道信息列表中遍历所有渠道信息;
提取所述渠道信息列表中表征所述所有渠道信息总数的数字;及
将所述待发布的APK文件复制成大于或者等于所述数字的份数。
4.如权利要求1所述的多渠道应用分发方法,其特征在于,所述对所述所有渠道信息进行编号的步骤,具体包括:
用字符串或者数字对所述渠道信息的编号进行命名;及
通过预设的加密算法对所述渠道信息的编号进行加密。
5.如权利要求4所述的多渠道应用分发方法,其特征在于,所述并将渠道信息的编号写入所述复制的APK文件的步骤,具体包括:
将加密后的渠道信息的编号写入所述复制的APK文件的文件描述字段。
6.一种移动终端,其特征在于,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多渠道应用分发程序,所述多渠道应用分发程序被所述处理器执行时实现如下步骤:
获取应用程序的所有渠道信息,对所述所有渠道信息进行编号;
获取待发布的APK文件;
将所述待发布的APK文件复制至少一份,并将复制的APK文件存放至所述移动终端的缓存空间中;
从所述缓存空间中依次提取所述复制的APK文件,并将渠道信息的编号写入所述复制的APK文件;及
将写入渠道信息的编号的APK文件推送至对应编号的渠道以供用户进行下载。
7.如权利要求6所述的移动终端,其特征在于,所述多渠道应用分发程序被所述处理器执行时还实现如下步骤:
侦测所述待发布的APK文件版本是否更新;及
当所述待发布的APK文件版本出现更新版本时,清除所述缓存空间中的所述复制的APK文件。
8.如权利要求6所述的移动终端,其特征在于,所述将所述待发布的APK文件复制的步骤,具体包括:
从预设渠道信息列表中遍历所有渠道信息;
提取所述渠道信息列表中表征所述所有渠道信息总数的数字;及
将所述待发布的APK文件复制成大于或者等于所述数字的份数。
9.如权利要求7所述的移动终端,其特征在于,所述对所述所有渠道信息进行编号的步骤,具体包括:
用字符串或者数字对所述渠道信息的编号进行命名;及
通过预设的加密算法对所述渠道信息的编号进行加密;
其中,所述并将渠道信息的编号写入所述复制的APK文件的步骤,具体包括:
将加密后的渠道信息的编号写入所述复制的APK文件的文件描述字段。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有多渠道应用分发程序,所述多渠道应用分发程序可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5中任一项所述的多渠道应用分发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710658099.8A CN107943494A (zh) | 2017-08-04 | 2017-08-04 | 多渠道应用分发方法及移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710658099.8A CN107943494A (zh) | 2017-08-04 | 2017-08-04 | 多渠道应用分发方法及移动终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107943494A true CN107943494A (zh) | 2018-04-20 |
Family
ID=61928604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710658099.8A Pending CN107943494A (zh) | 2017-08-04 | 2017-08-04 | 多渠道应用分发方法及移动终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107943494A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492349A (zh) * | 2018-10-30 | 2019-03-19 | 连尚(新昌)网络科技有限公司 | 一种用于识别和管理文档分发渠道的方法与设备 |
CN110830559A (zh) * | 2019-10-24 | 2020-02-21 | 北京城市网邻信息技术有限公司 | 渠道包自动化批量处理方法、装置、设备及存储介质 |
CN111124473A (zh) * | 2018-10-31 | 2020-05-08 | 成都鼎桥通信技术有限公司 | 一种基于专网终端类型生成apk的方法和装置 |
CN111399864A (zh) * | 2020-03-16 | 2020-07-10 | 北京五八信息技术有限公司 | 一种安卓系统应用程序基础包生成方法以及生成装置 |
CN113992655A (zh) * | 2021-10-26 | 2022-01-28 | 陕西绝顶人峰网络科技有限公司 | 一种软件分包方法、系统及计算机存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110131421A1 (en) * | 2009-12-02 | 2011-06-02 | Fabrice Jogand-Coulomb | Method for installing an application on a sim card |
CN105068853A (zh) * | 2015-07-16 | 2015-11-18 | 贵阳语玩科技有限公司 | 渠道包的输出方法及装置 |
CN105893008A (zh) * | 2015-11-16 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种定制多渠道安装包的方法及装置 |
CN106020889A (zh) * | 2016-05-24 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种安装包生成方法及其装置、服务器 |
CN106843909A (zh) * | 2017-03-07 | 2017-06-13 | 东软集团股份有限公司 | 支持渠道定制的渠道打包方法及装置 |
-
2017
- 2017-08-04 CN CN201710658099.8A patent/CN107943494A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110131421A1 (en) * | 2009-12-02 | 2011-06-02 | Fabrice Jogand-Coulomb | Method for installing an application on a sim card |
CN105068853A (zh) * | 2015-07-16 | 2015-11-18 | 贵阳语玩科技有限公司 | 渠道包的输出方法及装置 |
CN105893008A (zh) * | 2015-11-16 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种定制多渠道安装包的方法及装置 |
CN106020889A (zh) * | 2016-05-24 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种安装包生成方法及其装置、服务器 |
CN106843909A (zh) * | 2017-03-07 | 2017-06-13 | 东软集团股份有限公司 | 支持渠道定制的渠道打包方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492349A (zh) * | 2018-10-30 | 2019-03-19 | 连尚(新昌)网络科技有限公司 | 一种用于识别和管理文档分发渠道的方法与设备 |
CN111124473A (zh) * | 2018-10-31 | 2020-05-08 | 成都鼎桥通信技术有限公司 | 一种基于专网终端类型生成apk的方法和装置 |
CN110830559A (zh) * | 2019-10-24 | 2020-02-21 | 北京城市网邻信息技术有限公司 | 渠道包自动化批量处理方法、装置、设备及存储介质 |
CN111399864A (zh) * | 2020-03-16 | 2020-07-10 | 北京五八信息技术有限公司 | 一种安卓系统应用程序基础包生成方法以及生成装置 |
CN111399864B (zh) * | 2020-03-16 | 2023-07-07 | 北京五八信息技术有限公司 | 一种安卓系统应用程序基础包生成方法以及生成装置 |
CN113992655A (zh) * | 2021-10-26 | 2022-01-28 | 陕西绝顶人峰网络科技有限公司 | 一种软件分包方法、系统及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108536481A (zh) | 一种应用程序启动方法、移动终端及计算机存储介质 | |
CN107943494A (zh) | 多渠道应用分发方法及移动终端 | |
CN107688607A (zh) | 一种数据库访问的方法及移动终端、计算机可读存储介质 | |
CN108289174A (zh) | 一种拍摄方法、移动终端及计算机可读存储介质 | |
CN107038245A (zh) | 页面切换方法、移动终端及存储介质 | |
CN108279904A (zh) | 代码编译方法及终端 | |
CN109739602A (zh) | 一种移动终端壁纸设置方法及装置、移动终端及存储介质 | |
CN110187943A (zh) | 一种录屏方法、终端及计算机可读存储介质 | |
CN107786749A (zh) | 一种信息处理方法、终端和计算机可读存储介质 | |
CN108228049A (zh) | 自适应形变控制方法、柔性屏终端及计算机存储介质 | |
CN107463324A (zh) | 一种图片显示方法、移动终端和计算机可读存储介质 | |
CN107678650A (zh) | 一种图片识别方法、移动终端及计算机可读存储介质 | |
CN109584897A (zh) | 视频降噪方法、移动终端及计算机可读存储介质 | |
CN108984590A (zh) | 一种页面数据展示方法、终端及计算机可读存储介质 | |
CN107105058A (zh) | 文件夹传输方法及移动终端 | |
CN107247560A (zh) | 数据存储方法及移动终端 | |
CN107608727A (zh) | 一种应用程序的显示方法、移动终端及存储介质 | |
CN108366303A (zh) | 一种视频播放方法、移动终端及计算机可读存储介质 | |
CN108650281A (zh) | 一种数据管理方法、装置及计算机可读存储介质 | |
CN107748680A (zh) | 一种内核配置方法、终端及计算机可读存储介质 | |
CN107391593A (zh) | 一种文件处理方法、移动终端和计算机可读存储介质 | |
CN107943397A (zh) | 一种便签生成方法、移动终端及计算机可读存储介质 | |
CN109684020A (zh) | 一种主题切换方法、设备及计算机可读存储介质 | |
CN109947519A (zh) | 硬件加速控制方法、终端和计算机可读存储介质 | |
CN109147006A (zh) | 一种图片处理方法、移动终端及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180604 Address after: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.) Applicant after: ONECONNECT FINANCIAL TECHNOLOGY Co.,Ltd. (SHANGHAI) Address before: 200030 Xuhui District, Shanghai Kai Bin Road 166, 9, 10 level. Applicant before: ONECONNECT FINANCIAL TECHNOLOGY Co.,Ltd. (SHANGHAI) |
|
TA01 | Transfer of patent application right | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180420 |
|
RJ01 | Rejection of invention patent application after publication |