CN106293696A - 显示应用程序下载安装状态的方法及其对应装置 - Google Patents

显示应用程序下载安装状态的方法及其对应装置 Download PDF

Info

Publication number
CN106293696A
CN106293696A CN201610585130.5A CN201610585130A CN106293696A CN 106293696 A CN106293696 A CN 106293696A CN 201610585130 A CN201610585130 A CN 201610585130A CN 106293696 A CN106293696 A CN 106293696A
Authority
CN
China
Prior art keywords
instruction
download
application program
desktop
icon
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
Application number
CN201610585130.5A
Other languages
English (en)
Other versions
CN106293696B (zh
Inventor
吴立佳
任魁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Anyun Century Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610585130.5A priority Critical patent/CN106293696B/zh
Publication of CN106293696A publication Critical patent/CN106293696A/zh
Application granted granted Critical
Publication of CN106293696B publication Critical patent/CN106293696B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种显示应用程序下载安装状态的方法,包括:在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。同时,还提供了一种用于显示应用程序下载安装状态的装置。由此,可使用户在下载安装应用程序时通过应用商店和桌面任意一个界面都可查看到下载安装状态,从而有效的提升了用户体验。

Description

显示应用程序下载安装状态的方法及其对应装置
技术领域
本发明涉及计算机应用程序领域,更具体地,涉及一种显示应用程序下载安装状态的方法及其对应装置。
背景技术
随着智能终端的普及,用户越来越习惯于通过应用商店下载应用程序,全球应用程序的下载数量、应用创新的数量都在加速增长。在此环境下,为满足用户体验,显示安装进度及状态是一种必不可少的技术,能使用户及时了解当前应用程序下载安装任务的进度。
现有的技术方案中,用户通过应用商店下载安装应用程序时,为查看下载安装状态时需要进入应用商店中才能查看,无法在桌面直接查看下载安装状态,降低了用户体验。
发明内容
本发明的首要目的旨在提供一种显示应用程序下载安装状态的方法及其相应原装置;
为了实现上述目的,第一方面,本发明提供了一种显示应用程序下载安装状态的方法,包括如下步骤:
在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
优选地,所述在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标的步骤中,具体包括:
应用商店进程接收用户指令安装指定的应用程序;
应用商店进程创建指示该应用程序的安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
桌面进程创建并显示应用程序的指示图标在桌面上。
优选地,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。
优选地,应用商店通过call方法调用桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
优选地,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
优选地,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
优选地,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。
优选地,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。
优选地,所述下载安装包括应用程序的下载任务和安装任务。
优选地,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序、下载完成、下载失败和重新下载中其中一项,还包括安装任务中的开始安装、安装失败、重新安装和安装完成中其中一项。
优选地,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。
优选地,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
第二方面,本发明还提供了一种显示应用程序下载安装状态的装置,其特征在于,包括:
显示模块,在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收模块,接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
执行模块,根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
优选地,所述显示模块具体包括:
接收单元,应用商店进程接收用户指令下载安装指定的应用程序;
创建单元,应用商店进程创建指示该应用程序的下载安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
显示单元,桌面进程创建并显示应用程序的指示图标在桌面上。
优选地,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。
优选地,应用商店通过call方法调用桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
优选地,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
优选地,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
优选地,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。
优选地,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。
优选地,所述下载安装包括应用程序的下载任务和安装任务。
优选地,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序、下载完成、下载失败和重新下载中其中一项,还包括安装任务中的开始安装、安装失败、重新安装和安装完成中其中一项。
优选地,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。
优选地,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
相对于现有技术,本发明提供的技术方案中,当用户在应用商店点击下载指定应用程序的时候,应用商店进程创建用于指示安装状态的指示图标,并调用预置于Android系统的内容提供者类的call方法回调桌面的创建下载变量,同时,将应用程序的包名、图标和应用程序名称传递到桌面;桌面根据接收的创建指令及应用程序信息创建下载安装状态指示图标。此时,应用商店进程与桌面中均生成指示应用程序下载安装状态的指示图标。在安装应用程序过程中,针对应用商店与桌面中其中一方的指示图标而产生的安装状态修改指令,应用商店与桌面中,可执行针对自身显示的指示图标的修改,并且回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。所述针对下载安装状态指示图标的变化如:应用程序在安装中时,桌面指示图标上的蒙版根据安装进度从下往上褪去,用户可根据蒙版覆盖图标的范围得知当前下载进度;当应用程序下载成功时,桌面的指示图标上的蒙版全部褪去,图标下方的名称显示为安装中等等。
由此,在应用程序下载安装过程中,用户通过应用商店和桌面任意一个界面查看到下载安装状态,从而能有效的提升用户体验。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本发明一个实施例的显示应用程序下载安装状态方法的流程图。
图2是利用本发明的方法显示应用程序下载安装状态的装置的框图。
图3示出了本发明显示应用程序下载安装状态的装置中显示模块的具体框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对于本发明中用到的专有名词解释如下:
执行函数:本发明中的执行函数指在自定义的内容提供者类当中定义的用以执行桌面和应用商店接收的对下载安装状态指示图标的修改指令;
Android系统:一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑;
ContentProvider:Andriod系统中跨应用数据共享的方式之一;
包名:在Android系统中应用程序的唯一标识;
进程(Process):计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础;
字段:在数据库中,表的“列”称为“字段”,每个字段包含某一专题的信息;
回调:Android系统中的一种调用方式。
第一方面,在本发明中的一个实施例中,提供了一种显示应用程序下载安装状态的方法流程图如图1所示,包括:
S110:在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
具体地,所述在应用商店和桌面显示用于指示该应用程序的安装状态的指示图标的步骤中,具体包括:
应用商店进程接收用户指令下载安装指定的应用程序;
应用商店进程创建指示该应用程序的下载安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
桌面进程创建并显示应用程序的指示图标在桌面上。
本领域技术人员可以理解,在操作系统中,进程一般指一个执行单元。在Android系统上,一个应用可以看成一个进程。默认情况下,当启动一个应用时,应用上所有的组件都运行在同一进程上。
具体地,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。本领域技术人员可以理解,应用商店中的指示图标可显示为状态框,该状态框中可根据安装状态的不同显示进度条或文字状态信息,如:当应用程序处于暂停下载状态时,在该状态框中可显示文字“继续下载”,一方面告知用户应用程序此时为暂停下载状态,另一方面,可告知用户点击该“继续下载”状态框可触发应用程序继续下载。
具体地,应用商店通过call方法回调桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
具体地,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
本发明中,应用程序的包名、图标及应用名称通过附加在bundle中传递给桌面,所述bundle类为Android系统中用于携带数据的类。同理,当应用程序进入下载时,应用商店也通过bundle将应用程序的下载进度传送给桌面。更进一步地,应用商店进程将需要传递到桌面的数据附加在bundle中,由bundle传递到桌面。
具体地,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
ContentProvider提供了一种通用接口机制可以方便地实现不同应用程序间的数据共享。ContentProvider通常使用表的形式来组织数据,每个ContentProvider都对外提供一个公共的URI。实现ContentProvider的具体过程如下:
1)定义一个CONTENT URI变量;
2)定义一个类继承ContentProvider;
3)通过ContentProvider中的query(),insert(),update(),delete(),getType()和onCreate()方法实现对数据的各项操作;
4)在AndroidManifest.xml中添加声明注册新的ContentProvider。
对ContentProvider内容的操作是通过Content-Resolver类来实现的,通过Context的getContentRe-solver()方法得到一个ContentResolver类,根据指定的URI即可访问对应ContentProvider。严格意义上讲,ContentProvider是对数据库进行了一层封装,最终还是以.db文件存储于终端上。访问方式与数据库的访问基本相似,基本具备了数据库存储方式的优缺点。而它与数据库的不同之处就是,他对数据库进行封装以后可以实现数据在各个应用程序之问的共享,这也是它最大的优点。例如Android系统中的音频、视频、通讯录等,都是采用这种方式存储的。
在Android系统中提供了四种跨进程通信的方式,分别对应Android的四种应用程序组件:Activity、ContentProvider、Broadcast和Service。其中,ContentProvider用以跨进程访问其他应用程序中的数据。在Android 3.0的系统中,ContentProvider加入了一个新的方法,即上述call方法,可以用来进行跨进程的方法调用,ContentProvide中这个方法的具体定义如下:Bundle call(Uri uri,String method,String arg,Bundle extras)。
其中,每个ContentProvider都对外提供一个公共的URI,URI包含了两方面的信息,第一方面表示需要操作的ContentProvider,第二方面表示该ContentProvider中的需要操作的数据。本发明中,分别定义了对应应用商店和桌面的URI协议,如下所示:
public static final String ASSISIT_PROVIDE_URL
="content://com.qihoo.appstore.LauncherDownloadProvider";//应用商店
provider URL
public static final String LAUNCHER_PROVIDE_URL
="content://com.qiku.android.Launcher3.DownLoadProvider";//Launcherprovider URL
本领域技术人员可以理解,URL是一种具体的URI,它不仅唯一标识资源,而且还提供了定位该资源的信息,可以用以描述包括文件、服务器的地址和目录等信息资源。
根据该URI便可对应用商店和桌面对应的ContentProvider中的数据进行操作。当需要对应用商店中的ContentProvider的数据进行操作时,则调用应用商店的URI,当需要对桌面中的ContentProvider的数据进行操作时,则调用桌面的URI。
应用商店与桌面之间都具有各自的ContentProvider,当要实现应用商店与桌面之间的数据通信时,应用商店通过调用桌面的URI从而调用桌面的对应的方法以响应执行相应的操作,同理,桌面也可通过调用应用商店的URI进而调用应用商店的对应的方法以响应执行相应的操作,最终使所述应用商店和桌面能同步的响应该修改指令。
以下提供一个下载器App与桌面之间进行交互的示例供本领域技术人员参照理解本发明,但不应理解为对本发明的实现的限制。本示例只提供ContentProvider中call方法的具体实现部分,其余部分省略,但本领域技术人员可以理解。
首先,下载器App的ContentProvider中对应上述call方法的实现为:
同时,必须调用对方的URI:
private final Uri LAUNCHERCONTENTPROVIDER_URI
=Uri.parse("content://cn.hiroz.launcher.LauncherContentProvider");
其次,桌面的ContentProvider中对应上述call方法的实现为:
同时,还必须调用对方的URI:
private final Uri DOWNLOADERCONTENTPROVIDER_URI
=Uri.parse("content://cn.hiroz.downloader.DownloaderContentProvider");
由此,桌面就可以通过LauncherContentProvider的“download”方法和“pause”方法来调用下载器App的功能,从而实现下载器App与桌面的交互。
本发明中对Method的定义有如下:
public static final String FLAG_DOWNLOAD_CREATE
="FLAG_DOWNLOAD_CREATE";//创建下载标志
public static final String FLAG_DOWNLOAD_ING
="FLAG_DOWNLOAD_ING";//开始下载标志
public static final String FLAG_DOWNLOAD_PAUSE
="FLAG_DOWNLOAD_PAUSE";//暂停下载标志
public static final String FLAG_INSTALL_ING="FLAG_INSTALL_ING";//安装标志
public static final String FLAG_DOWNLOAD_FAIL
="FLAG_DOWNLOAD_FAIL";//下载失败标志
public static final String FLAG_INSTALL_FAIL
="FLAG_INSTALL_FAIL";//安装失败标志
public static final String FLAG_DOWNLOAD_DELETE
="FLAG_DOWNLOAD_DELETE";//删除任务标志
public static final String FLAG_DOWNLOAD_RESUME
="FLAG_DOWNLOAD_RESUME";//继续下载标志
public static final String FLAG_INSTALL_RESUME
="FLAG_INSTALL_RESUME";//继续安装标志
public static final String FLAG_GET_SATTE
="FLAG_INSTALL_RESUME";//获取下载安装状态
同理,根据以上所定义的Method方法,应用商店与桌面可通过ContentProvider中的call方法调用任意一个以上所示的Method方法来回调对方中的相应的方法以实现应用商店与桌面之间的交互。
具体地,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。所述蒙版覆盖图标的区域可用于告知用户当前应用程序的下载进度,同时,可在该指示图标的下方以文字的形式显示当前应用程序的安装状态。
本领域技术人员可以理解,应用商店进程与桌面进程都可设有显示应用程序安装状态的指示图标,但是应用商店的指示图标与桌面的指示图标可根据其界面布局设置而不一致,本发明中对指示图标不做具体形式限制,只要能实现在应用商店与桌面都可查看到应用程序的下载安装状态即可。
具体地,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。本领域技术人员可以理解,将应用程序的包名、图标及应用名称存储在桌面数据库中以便智能终端启动桌面时加载应用程序的图标和应用名称等信息。
如上所述,应用商店与桌面创建应用程序指示图标的具体过程为:当应用商店进程接收到用户指令安装指定的应用程序时,应用商店通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_CREATE方法并将应用程序的包名、图标以及应用程序名称附加到bundle中传递给桌面,由此实现应用商店与桌面同步创建应用程序指示图标的功能。
S120:接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
本领域技术人员可以理解,用户触发应用程序下载之后,系统可实时监测对应用程序安装状态的修改指令,并自行判断该修改指令为针对应用商店的指示图标或针对桌面的指示图标。
具体地,所述下载安装包括应用程序的下载任务和安装任务。
具体地,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序、下载完成、下载失败和重新下载中其中一项,还包括安装任务中的开始安装、安装失败、重新安装和安装完成中其中一项。
S130:根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
具体地,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。在Android系统中,所述函数又称方法,所述函数为上述自定义的Method方法。
具体地,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
以下对每个执行函数及其对应的对指示图标的修改进行说明:
当用户触发应用商店中的应用程序下载,此时,应用程序进程创建本进程内的应用程序安装状态的指示图标,并通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_CREATE字符串变量,将该指令传达到桌面进程,并将应用程序的包名、图标及应用名称附加在Bundle中传递给桌面,此时桌面进程便创建一个该应用程序的指示图标,且该指示图标由原图标及其上的一层蒙版构成,指示图标下方的名称显示为等待下载。
当应用程序进入下载时,应用商店进程在指示图标上显示下载进度条,同时通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_ING字符串变量并将当前下载进度通过bundle传递给桌面,此时,桌面根据当前的进度计算出蒙版覆盖的范围,每计算出一个新的覆盖范围都重新绘制一次在该应用程序的原图标上构成新的指示图标,随着下载进度的持续增加,蒙版由下往上逐步褪去,且指示图标下方的名称显示为下载中。
当用户在应用商店中触发应用程序暂停下载,应用商店进程暂停下载任务,并将指示图标显示为继续下载,一方面告知用户应用程序已停止下载,另一方面告知用户可点击该指示图标继续启动下载。同时,应用商店进程通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_PAUSE字符串变量,此时桌面的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载。
当用户在桌面中触发应用程序暂停下载,桌面进程将指示图标中的蒙版停止在当前下载进度。同时,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_PAUSE字符串变量,此时应用商店暂停下载任务并将指示图标显示为继续下载。
当应用程序处于暂停下载的状态,用户在应用商店或桌面上触发继续下载时,应用商店进程和桌面可调用对方的FLAG_DOWNLOAD_RESUME字符串变量,此时应用商店进程或桌面便会恢复下载,对应的指示图标恢复到正在下载的状态。
当用户在桌面中删除该应用程序,桌面进程删除该应用程序指示图标并通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_DELETE字符串变量,此时,应用商店进程删除该下载任务。
当应用程序下载失败时,应用商店进程的指示图标显示为下载失败,并通过ContentProvider中的call方法回调桌面中的FLAG_DOWNLOAD_FAIL字符串变量,此时,桌面指示图标下方的名称显示为下载失败。
对于下载失败的应用程序,用户可通过桌面触发重新下载,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_RESUME字符串变量,此时,应用商店进程重新启动下载任务。
当应用程序下载成功时,应用商店进程的指示图标显示为安装中并通过ContentProvider中的call方法回调桌面中的FLAG_INSTALL_ING字符串变量,此时,桌面中的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中。
当应用程序安装失败时,应用商店进程的指示图标显示为安装失败,并通过ContentProvider中的call方法回调桌面中的FLAG_INSTALL_FAIL字符串变量,此时,桌面中应用程序的图标下方的名称显示为安装失败。
对于安装失败的应用程序,用户可通过桌面触发应用程序重新安装,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_INSTALL_RESUME字符串变量,此时,应用商店重新启动安装任务。
当应用程序安装成功时,应用商店进程通过ContentProvider中的call方法回调桌面中的FLAG_PACKAGE_ADDED字符串变量,此时,桌面中应用程序的图标下方的名称显示为应用程序的名称。
第二方面,在本发明中的一个实施例中,提供了一种显示应用程序下载安装状态的装置,其框图如图2所示,包括:
显示模块210,在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
具体地,所述显示模块210具体包括:
接收单元2101,应用商店进程接收用户指令下载安装指定的应用程序;本领域技术人员可以理解,在操作系统中,进程一般指一个执行单元。在Android系统上,一个应用可以看成一个进程。默认情况下,当启动一个应用时,应用上所有的组件都运行在同一进程上。
创建单元2102,应用商店进程创建指示该应用程序的下载安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
具体地,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。本领域技术人员可以理解,该状态框中可根据安装状态的不同显示进度条或文字状态信息,如:当应用程序处于暂停下载状态时,在该状态框中可显示文字“继续下载”,一方面告知用户应用程序此时为暂停下载状态,另一方面,可告知用户点击该“继续下载”状态框可触发应用程序继续下载。
具体地,应用商店通过call方法回调桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
具体地,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
应用程序的包名、图标及应用名称通过附加在bundle中传递给桌面,所述bundle类为Android系统中用于携带数据的类。同理,当应用程序进入下载时,应用商店也通过bundle将应用程序的下载进度传送给桌面。更进一步地,应用商店中将需要传递到桌面的数据附加在bundle中,由bundle传递到桌面。
具体地,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
ContentProvider提供了一种通用接口机制可以方便地实现不同应用程序间的数据共享。Content-Provider通常使用表的形式来组织数据,每个ContentProvider都对外提供一个公共的URI。实现ContentProvider的具体过程如下:
1)定义一个CONTENT URI变量;
2)定义一个类继承ContentProvider;
3)通过ContentProvider中的query(),insert(),update(),delete(),getType()和onCreate()方法实现对数据的各项操作;
4)在AndroidManifest.xml中添加声明注册新的ContentProvider。
对ContentProvider内容的操作是通过Content-Resolver类来实现的,通过Context的getContentResolver()方法得到一个ContentResolver类,根据指定的URI即可访问对应ContentProvider。严格意义上讲,ContentProvider是对数据库进行了一层封装,最终还是以.db文件存储于终端上。访问方式与数据库的访问基本相似,基本具备了数据库存储方式的优缺点。而它与数据库的不同之处就是,他对数据库进行封装以后可以实现数据在各个应用程序之问的共享,这也是它最大的优点。例如Android系统中的音频、视频、通讯录等,都是采用这种方式存储的。
在Android系统中提供了四种跨进程通信的方式,分别对应Android的四种应用程序组件:Activity、ContentProvider、Broadcast和Service。其中,ContentProvider用以跨进程访问其他应用程序中的数据。在Android 3.0的系统中,ContentProvider加入了一个新的方法,即上述call方法,可以用来进行跨进程的方法调用,ContentProvide中这个方法的具体定义如下:Bundle call(Uri uri,String method,String arg,Bundle extras)。
其中,每个ContentProvider都对外提供一个公共的URI,URI包含了两方面的信息,第一方面表示需要操作的ContentProvider,第二方面表示该ContentProvider中的需要操作的数据。本发明中,分别定义了对应应用商店和桌面的URI协议,如下所示:
public static final String ASSISIT_PROVIDE_URL
="content://com.qihoo.appstore.LauncherDownloadProvider";//应用商店
provider URL
public static final String LAUNCHER_PROVIDE_URL
="content://com.qiku.android.Launcher3.DownLoadProvider";//Launcher
provider URL
本领域技术人员可以理解,URL是一种具体的URI,它不仅唯一标识资源,而且还提供了定位该资源的信息,可以用以描述包括文件、服务器的地址和目录等信息资源。
根据该URI便可对应用商店和桌面对应的ContentProvider中的数据进行操作。当需要对应用商店中的ContentProvider的数据进行操作时,则调用应用商店的URI,当需要对桌面中的ContentProvider的数据进行操作时,则调用桌面的URI。
应用商店与桌面之间都具有各自的ContentProvider,当要实现应用商店与桌面之间的数据通信时,应用商店通过调用桌面的URI调用桌面的对应的方法以响应执行相应的操作,桌面也可通过调用应用商店的URI调用应用商店的对应的方法以响应以执行相应的操作,最终使所述应用商店和桌面能同步的响应该修改指令。
以下提供一个下载器App与桌面之间进行交互的示例供本领域技术人员参照理解本发明,但不应理解为对本发明的实现的限制。本示例只提供ContentProvider中call方法的具体实现部分,其余部分省略,但本领域技术人员可以理解。
首先,下载器App的ContentProvider中对应上述call方法的实现为:
同时,必须调用对方的URI:
private final Uri LAUNCHERCONTENTPROVIDER_URI
=Uri.parse("content://cn.hiroz.launcher.LauncherContentProvider");
其次,桌面的ContentProvider中对应上述call方法的实现为:
同时,还必须调用对方的URI:
private final Uri DOWNLOADERCONTENTPROVIDER_URI
=Uri.parse("content://cn.hiroz.downloader.DownloaderContentProvider");
由此,桌面就可以通过LauncherContentProvider的“download”方法和“pause”方法来调用下载器App的功能,从而实现下载器App与桌面的交互。
本发明中对Method的定义有如下:
public static final String FLAG_DOWNLOAD_CREATE
="FLAG_DOWNLOAD_CREATE";//创建下载标志
public static final String FLAG_DOWNLOAD_ING
="FLAG_DOWNLOAD_ING";//开始下载标志
public static final String FLAG_DOWNLOAD_PAUSE
="FLAG_DOWNLOAD_PAUSE";//暂停下载标志
public static final String FLAG_INSTALL_ING="FLAG_INSTALL_ING";//安装标志
public static final String FLAG_DOWNLOAD_FAIL
="FLAG_DOWNLOAD_FAIL";//下载失败标志
public static final String FLAG_INSTALL_FAIL
="FLAG_INSTALL_FAIL";//安装失败标志
public static final String FLAG_DOWNLOAD_DELETE
="FLAG_DOWNLOAD_DELETE";//删除任务标志
public static final String FLAG_DOWNLOAD_RESUME
="FLAG_DOWNLOAD_RESUME";//继续下载标志
public static final String FLAG_INSTALL_RESUME
="FLAG_INSTALL_RESUME";//继续安装标志
public static final String FLAG_GET_SATTE
="FLAG_INSTALL_RESUME";//获取下载安装状态
同理,根据以上所定义的Method方法,应用商店进程与桌面进程可通过ContentProvider中的call方法调用任意一个以上所示的Method方法来回调对方的对应的方法以实现应用商店与桌面之间的交互。
显示单元2013,桌面进程创建并显示应用程序的指示图标在桌面上。
具体地,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。所述蒙版覆盖图标的区域可用于告知用户当前应用程序的下载进度,同时,可在该指示图标的下方以文字的形式显示当前应用程序的安装状态。
本领域技术人员可以理解,应用商店进程与桌面进程都可设有显示应用程序安装状态的指示图标,但是应用商店的指示图标与桌面的指示图标可根据其界面布局设置而不一致,本发明中对指示图标不做具体形式限制,只要能实现在应用商店与桌面都可查看到应用程序的安装状态即可。
具体地,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。本领域技术人员可以理解,将应用程序的包名、图标及应用名称存储在桌面数据库中以便终端桌面启动时加载应用程序的图标和应用名称等信息。
如上所述,应用商店与桌面创建应用程序指示图标的具体过程为:当应用商店进程接收到用户指令安装指定的应用程序时,应用商店通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_CREATE方法并将应用程序的包名、图标以及应用程序名称附加到bundle中传递给桌面,由此实现应用商店与桌面同步创建应用程序指示图标的功能。
接收模块220,接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
本领域技术人员可以理解,用户触发应用程序下载之后,系统可实时监测对应用程序下载安装状态的修改指令,并自行判断该修改指令为针对应用商店的指示图标或针对桌面的指示图标。
具体地,所述下载安装包括应用程序的下载任务和安装任务。
具体地,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序下载完成中其中一项,还包括安装任务中的开始安装、安装失败和安装完成中其中一项。
执行模块230,根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
具体地,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。在Android系统中,所述函数又称方法,所述函数为上述自定义的Method方法。
具体地,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
以下对每个执行函数及其对应的对指示图标的修改进行说明:
当用户触发应用商店中的应用程序下载,此时,应用程序进程创建本进程内的应用程序安装状态的指示图标,并通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_CREATE字符串变量,将该指令传达到桌面进程,并将应用程序的包名、图标及应用名称附加在Bundle中传递给桌面,此时桌面进程便创建一个该应用程序的指示图标,且该指示图标由原图标及其上的一层蒙版构成,指示图标下方的名称显示为等待下载。
当应用程序进入下载时,应用商店进程在指示图标上显示下载进度条,同时通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_ING字符串变量并将当前下载进度通过bundle传递给桌面,此时,桌面根据当前的进度计算出蒙版覆盖的范围,每计算出一个新的覆盖范围都重新绘制一次在该应用程序的原图标上构成新的指示图标,随着下载进度的持续增加,蒙版由下往上逐步褪去,且指示图标下方的名称显示为下载中。
当用户在应用商店中触发应用程序暂停下载,应用商店进程暂停下载任务,并将指示图标显示为继续下载,一方面告知用户应用程序已停止下载,另一方面告知用户可点击该指示图标继续启动下载。同时,应用商店进程通过ContentProvider中的call方法回调桌面的FLAG_DOWNLOAD_PAUSE字符串变量,此时桌面的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载。
当用户在桌面中触发应用程序暂停下载,桌面进程将指示图标中的蒙版停止在当前下载进度。同时,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_PAUSE字符串变量,此时应用商店暂停下载任务并将指示图标显示为继续下载。
当应用程序处于暂停下载的状态,用户在应用商店或桌面上触发继续下载时,应用商店进程和桌面可调用对方的FLAG_DOWNLOAD_RESUME字符串变量,此时应用商店进程或桌面便会恢复下载,对应的指示图标恢复到正在下载的状态。
当用户在桌面中删除该应用程序,桌面进程删除该应用程序指示图标并通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_DELETE字符串变量,此时,应用商店进程删除该下载任务。
当应用程序下载失败时,应用商店进程的指示图标显示为下载失败,并通过ContentProvider中的call方法回调桌面中的FLAG_DOWNLOAD_FAIL字符串变量,此时,桌面指示图标下方的名称显示为下载失败。
对于下载失败的应用程序,用户可通过桌面触发重新下载,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_DOWNLOAD_RESUME字符串变量,此时,应用商店进程重新启动下载任务。
当应用程序下载成功时,应用商店进程的指示图标显示为安装中并通过ContentProvider中的call方法回调桌面中的FLAG_INSTALL_ING字符串变量,此时,桌面中的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中。
当应用程序安装失败时,应用商店进程的指示图标显示为安装失败,并通过ContentProvider中的call方法回调桌面中的FLAG_INSTALL_FAIL字符串变量,此时,桌面中应用程序的图标下方的名称显示为安装失败。
对于安装失败的应用程序,用户可通过桌面触发应用程序重新安装,桌面进程通过ContentProvider中的call方法回调应用商店中的FLAG_INSTALL_RESUME字符串变量,此时,应用商店重新启动安装任务。
当应用程序安装成功时,应用商店进程通过ContentProvider中的call方法回调桌面中的FLAG_PACKAGE_ADDED字符串变量,此时,桌面中应用程序的图标下方的名称显示为应用程序的名称。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
概括而言,本发明提供的技术方案概述如下:
A1、一种显示应用程序下载安装状态的方法,包括:
在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
A2、根据权利要求A1所述的方法,所述在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标的步骤中,具体包括:
应用商店进程接收用户指令下载安装指定的应用程序;
应用商店进程创建指示该应用程序的下载安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
桌面进程创建并显示应用程序的指示图标在桌面上。
A3、根据权利要求A2所述的方法,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。
A4、根据权利要求A2所述的方法,应用商店通过call方法回调桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
A5、根据权利要求A2所述的方法,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
A6、根据权利要求A5所述的方法,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
A7、根据权利要求A2所述的方法,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。
A8、根据权利要求A7所述的方法,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。
A9、根据权利要求A1所述的方法,所述下载安装包括应用程序的下载任务和安装任务。
A10、根据权利要求A9所述的方法,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序、下载完成、下载失败和重新下载中其中一项,还包括安装任务中的开始安装、安装失败、重新安装和安装完成中其中一项。
A11、根据权利要求A1所述的方法,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。
A12、根据权利要求A1所述的方法,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
B13、一种显示应用程序下载安装状态的装置,其特征在于,包括:
显示模块,在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收模块,接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
执行模块,根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
B14、根据权利要求B13所述的装置,所述显示模块具体包括:
接收单元,应用商店进程接收用户指令下载安装指定的应用程序;
创建单元,应用商店进程创建指示该应用程序的安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
显示单元,桌面进程创建并显示应用程序的指示图标在桌面上。
B15、根据权利要求B14所述的装置,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。
B16、根据权利要求B14所述的装置,应用商店通过call方法调用桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
B17、根据权利要求B14所述的装置,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
B18、根据权利要求B17所述的装置,所述内容提供者类为根据数据共享规则自定义的ContentProvider类,用以实现应用商店与桌面的跨应用数据共享。
B19、根据权利要求B14所述的装置,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。
B20、根据权利要求B19所述的装置,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。
B21、根据权利要求B13所述的装置,所述下载安装包括应用程序的下载任务和安装任务。
B22、根据权利要求B21所述的装置,所述下载安装状态包括所述下载任务中的等待下载、正在下载、暂停下载、继续下载、删除应用程序、下载完成、下载失败和重新下载中其中一项,还包括安装任务中的开始安装、安装失败、重新安装和安装完成中其中一项。
B23、根据权利要求B13所述的装置,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。
B24、根据权利要求B13所述的装置,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
本发明提供的技术方案中,当用户在应用商店点击下载指定应用程序的时候,应用商店进程创建用于指示下载安装状态的指示图标,并调用预置于Android系统的内容提供者类的call方法回调桌面的创建下载变量,同时,将应用程序的包名、图标和应用程序名称通过bundle传递到桌面;桌面根据接收的创建指令及应用程序信息创建下载安装状态指示图标。此时,应用商店进程与桌面中均生成指示应用程序下载安装状态的指示图标。在安装应用程序过程中,针对应用商店与桌面中其中一方的指示图标而产生的下载安装状态修改指令,应用商店与桌面中,可执行针对自身显示的指示图标的修改,并且回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的安装状态相对修改前发生改变。所述针对下载安装状态指示图标的变化如:当应用程序在安装中时,桌面指示图标上的蒙版根据安装进度从下往上褪去,用户可根据蒙版覆盖图标的范围得知当前下载进度;当应用程序下载成功时,桌面的指示图标上蒙版全部褪去,图标下方的名称显示为安装中等等。
综上所述,在应用程序下载安装过程中,用户通过应用商店和桌面任意一个界面查看到下载安装状态,稀释用户对时间流动的感知,缓解用户等待的焦虑从而能有效的提升用户体验。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种显示应用程序下载安装状态的方法,其特征在于,包括:
在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
2.根据权利要求1所述的方法,其特征在于,所述在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标的步骤中,具体包括:
应用商店进程接收用户指令下载安装指定的应用程序;
应用商店进程创建指示该应用程序的下载安装状态的指示图标并发送指定应用程序的包名、图标及应用名称至桌面;
桌面进程创建并显示应用程序的指示图标在桌面上。
3.根据权利要求2所述的方法,其特征在于,应用商店进程创建该指示图标的同时在该指示图标中显示等待中以标示该应用程序处于等待下载状态。
4.根据权利要求2所述的方法,其特征在于,应用商店通过call方法回调桌面的创建下载变量,将应用程序的包名、图标及应用名称反馈至桌面。
5.根据权利要求2所述的方法,其特征在于,所述应用商店与所述桌面通过预置于Android系统的内容提供者类中的call方法进行通信。
6.根据权利要求2所述的方法,其特征在于,在应用程序的原图标上添加蒙版以作为指示图标,并在图标的下方显示名称为等待下载以标示该应用程序处于等待下载状态。
7.根据权利要求6所述的方法,其特征在于,所述桌面进程创建并显示应用程序的指示图标的同时将该应用程序的包名、图标及应用名称存储在桌面的数据库中。
8.根据权利要求1所述的方法,其特征在于,通过根据应用程序下载安装状态修改指令所自定义的执行函数进行对应修改。
9.根据权利要求1所述的方法,其特征在于,根据下载安装状态的修改指令,修改后的指示图标的变化如下:
当应用程序处于等待下载状态,接收到开始下载的修改指令时,应用商店进程的指示图标显示下载进度条,桌面进程的指示图标上的蒙版的覆盖区域由下往上褪去,褪去蒙版的图标区域占整个图标区域的比值为当前应用程序下载的进度百分比,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到暂停下载的修改指令时,应用商店进程的指示图标显示为继续下载,桌面进程的指示图标上蒙版暂停在当前下载的进度,指示图标下方名称显示为暂停下载;
当应用程序处于暂停下载状态,接收到继续下载的修改指令时,应用商店进程的指示图标显示为下载进度条,桌面进程的指示图标上的蒙版以当前位置继续褪去,指示图标下方名称显示为下载中;
当应用程序处于正在下载状态,接收到删除应用程序的修改指令时,应用商店进程删除该指示图标,桌面进程删除该指示图标;
当应用程序处于正在下载状态,接收到下载失败状态的修改指令时,应用商店进程的指示图标显示为下载失败,桌面进程的指示图标下方的名称显示为下载失败;
当应用程序处于下载失败状态,接收到的重新下载的修改指令时,应用商店进程与桌面进程指示图标恢复至正在下载状态;
当应用程序处于下载成功状态,接收到开始安装的修改指令时,应用商店进程的指示图标显示为安装中,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装中;
当应用程序处于安装中状态,接收到安装失败的修改指令时,应用商店进程的指示图标显示为安装失败,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为安装失败;
当应用程序处于安装失败状态,接收到重新安装的修改指令时,用于商店进程与桌面进程的指示图标恢复至正在安装状态。
当应用程序处于正在安装中状态,接收到安装成功的修改指令时,应用商店进程的指示图标显示为安装完成,桌面进程的指示图标中蒙版全部褪去,显示应用程序的原图标并将原图标下方的名称显示为应用程序的名称。
10.一种显示应用程序下载安装状态的装置,其特征在于,包括:
显示模块,在应用商店和桌面显示用于指示该应用程序的下载安装状态的指示图标;
接收模块,接收针对应用商店与桌面中其中一方的所述指示图标而产生的下载安装状态修改指令;
执行模块,根据该下载安装状态修改指令,应用商店与桌面中,接收该指令的一方执行针对自身显示的指示图标的修改,并且,回调另一方对应的执行函数以完成在该另一方所显示的指示图标的修改,以使修改后的指示图标所指示的下载安装状态相对修改前发生改变。
CN201610585130.5A 2016-07-22 2016-07-22 显示应用程序下载安装状态的方法及其对应装置 Active CN106293696B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610585130.5A CN106293696B (zh) 2016-07-22 2016-07-22 显示应用程序下载安装状态的方法及其对应装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610585130.5A CN106293696B (zh) 2016-07-22 2016-07-22 显示应用程序下载安装状态的方法及其对应装置

Publications (2)

Publication Number Publication Date
CN106293696A true CN106293696A (zh) 2017-01-04
CN106293696B CN106293696B (zh) 2020-05-01

Family

ID=57652191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610585130.5A Active CN106293696B (zh) 2016-07-22 2016-07-22 显示应用程序下载安装状态的方法及其对应装置

Country Status (1)

Country Link
CN (1) CN106293696B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686536A (zh) * 2017-02-23 2017-05-17 厦门美图移动科技有限公司 一种终端应用共享的方法及装置
CN106970868A (zh) * 2017-04-10 2017-07-21 广东欧珀移动通信有限公司 信息显示方法、装置及终端
CN108469992A (zh) * 2018-03-15 2018-08-31 链家网(北京)科技有限公司 Android系统基于URI的进程级别路由方法及装置
CN108958586A (zh) * 2018-07-03 2018-12-07 聚好看科技股份有限公司 一种控制下载任务的方法和装置
CN109408139A (zh) * 2018-09-26 2019-03-01 平安普惠企业管理有限公司 应用程序的开启方法、装置、计算机设备及存储介质
CN109995937A (zh) * 2019-03-14 2019-07-09 努比亚技术有限公司 应用图标显示方法、移动终端和计算机可读存储介质
CN110941437A (zh) * 2019-11-25 2020-03-31 连尚(新昌)网络科技有限公司 一种安装应用的方法与设备
CN114327527A (zh) * 2022-01-17 2022-04-12 重庆长安汽车股份有限公司 一种应用程序的下载安装方法及系统
US20230161609A1 (en) * 2020-06-29 2023-05-25 Vivo Mobile Communication Co., Ltd. Application management method and apparatus, and electronic device
CN117707385A (zh) * 2023-08-08 2024-03-15 荣耀终端有限公司 桌面图标调整方法、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946599A (zh) * 2012-11-08 2013-02-27 惠州Tcl移动通信有限公司 实现移动终端应用程序下载的方法及移动终端
CN103135879A (zh) * 2011-11-28 2013-06-05 联想(北京)有限公司 显示方法、显示装置和电子设备
US20130332886A1 (en) * 2012-06-08 2013-12-12 Apple Inc. Identification of recently downloaded content
CN104714716A (zh) * 2013-12-12 2015-06-17 乐视网信息技术(北京)股份有限公司 一种下载信息的显示方法及装置
US20160188130A1 (en) * 2014-12-29 2016-06-30 Quixey, Inc. Automatic Conditional Application Downloading

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135879A (zh) * 2011-11-28 2013-06-05 联想(北京)有限公司 显示方法、显示装置和电子设备
US20130332886A1 (en) * 2012-06-08 2013-12-12 Apple Inc. Identification of recently downloaded content
CN102946599A (zh) * 2012-11-08 2013-02-27 惠州Tcl移动通信有限公司 实现移动终端应用程序下载的方法及移动终端
CN104714716A (zh) * 2013-12-12 2015-06-17 乐视网信息技术(北京)股份有限公司 一种下载信息的显示方法及装置
US20160188130A1 (en) * 2014-12-29 2016-06-30 Quixey, Inc. Automatic Conditional Application Downloading

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686536A (zh) * 2017-02-23 2017-05-17 厦门美图移动科技有限公司 一种终端应用共享的方法及装置
US11137876B2 (en) 2017-04-10 2021-10-05 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Information display method, device and terminal for displaying progress on application icon
WO2018188289A1 (zh) * 2017-04-10 2018-10-18 广东欧珀移动通信有限公司 信息显示方法、装置及终端
CN106970868A (zh) * 2017-04-10 2017-07-21 广东欧珀移动通信有限公司 信息显示方法、装置及终端
CN108469992A (zh) * 2018-03-15 2018-08-31 链家网(北京)科技有限公司 Android系统基于URI的进程级别路由方法及装置
CN108958586A (zh) * 2018-07-03 2018-12-07 聚好看科技股份有限公司 一种控制下载任务的方法和装置
CN109408139A (zh) * 2018-09-26 2019-03-01 平安普惠企业管理有限公司 应用程序的开启方法、装置、计算机设备及存储介质
CN109995937A (zh) * 2019-03-14 2019-07-09 努比亚技术有限公司 应用图标显示方法、移动终端和计算机可读存储介质
CN109995937B (zh) * 2019-03-14 2021-09-07 努比亚技术有限公司 应用图标显示方法、移动终端和计算机可读存储介质
CN110941437A (zh) * 2019-11-25 2020-03-31 连尚(新昌)网络科技有限公司 一种安装应用的方法与设备
US20230161609A1 (en) * 2020-06-29 2023-05-25 Vivo Mobile Communication Co., Ltd. Application management method and apparatus, and electronic device
US11972274B2 (en) * 2020-06-29 2024-04-30 Vivo Mobile Communication Co., Ltd. Application management method and apparatus, and electronic device
CN114327527A (zh) * 2022-01-17 2022-04-12 重庆长安汽车股份有限公司 一种应用程序的下载安装方法及系统
CN117707385A (zh) * 2023-08-08 2024-03-15 荣耀终端有限公司 桌面图标调整方法、电子设备及存储介质

Also Published As

Publication number Publication date
CN106293696B (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
CN106293696A (zh) 显示应用程序下载安装状态的方法及其对应装置
US9244673B2 (en) System and method for updating application archive files
JP2019506654A (ja) ページジャンプの方法及び装置
CN106331135B (zh) 一种部分界面更新方法、系统、客户端和服务端
CN110913015B (zh) 一种云手机app的分布式快捷安装方法、系统及介质
CN108027741A (zh) 基于补丁升级的文件处理方法、装置、终端以及存储介质
CN104615462B (zh) 跨平台的移动应用生成服务端及系统
CN105959134A (zh) 基于pxe的自动安装部署方法、pxe服务器
CN104951360A (zh) 基于Docker的配置管理方式及装置
WO2016138323A1 (en) Remote device modification
WO2011088714A1 (zh) 应用程序运行方法、装置及系统
US10671376B2 (en) Server program hot upgrading method and device
WO2005081505A1 (en) Method of supplying content to a device
CN102129378A (zh) 一种软件菜单更新方法和装置
CN104301338A (zh) 基于云平台的应用系统自动部署方法
WO2012022835A2 (en) Method and apparatus for managing application resources via policy rules
CN104750528A (zh) 一种Android程序中的组件管理方法和装置
CN105786511A (zh) 终端设备Web应用管理的实现方法
CN102833350A (zh) WebApp更新的处理方法和处理装置
EP3005095A1 (en) Updating software components through online stores
CN105765533A (zh) 用于固件虚拟化的方法和装置
CN105843647A (zh) 一种应用程序的安装方法和装置
CN104219295A (zh) 基于服务器端配置的移动设备的信息展示方法及系统
CN105897902B (zh) 一种通过浏览器启动本地应用的方法及系统
US9946728B2 (en) Cloud service system and method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170720

Address after: 100102, 18 floor, building 2, Wangjing street, Beijing, Chaoyang District, 1801

Applicant after: BEIJING ANYUN SHIJI SCIENCE AND TECHNOLOGY CO., LTD.

Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant before: Beijing Qihu Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant