CN108874476B - 一种禁止广告展示的方法及系统 - Google Patents
一种禁止广告展示的方法及系统 Download PDFInfo
- Publication number
- CN108874476B CN108874476B CN201710325799.5A CN201710325799A CN108874476B CN 108874476 B CN108874476 B CN 108874476B CN 201710325799 A CN201710325799 A CN 201710325799A CN 108874476 B CN108874476 B CN 108874476B
- Authority
- CN
- China
- Prior art keywords
- advertisement
- bundle
- display
- files
- file
- 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.)
- Active
Links
Images
Abstract
本发明公开了一种禁止广告展示的方法及系统,所述方法包括:接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。本发明通过对bundle文件的停运,而使得调用任一被停运bundle文件对应的广告SDK的应用程序禁止播放所述广告,这样可以实现禁止系统中所有广告的展示,并且,根据禁止条件可以细化禁止广告的展示,实现细粒度化的禁止广告展示的功能。
Description
技术领域
本发明涉及智能终端技术领域,特别涉及一种禁止广告展示的方法及系统。
背景技术
随着智能终端设备的普及和移动应用程序市场的发展,越来越多的商家选择在终端应用程序上投放广告以达到推广商品的目的。现阶段基于Android平台的智能设备上的应用程序基本是通过调用广告软件开发包SDK(Software DevelopmentKit,SDK)中的接口接收广告平台分发的广告,并将该应用程序发布到各安卓Android应用程序市场,就可以通过该应用程序将广告推送给终端用户。
而由于智能终端屏幕尺寸的限制,一旦广告界面生成,则很有可能完全遮挡住当前用户所关注的有效信息。用户必须等待广告界面消失或者手动关闭广告界面后才能重新看到所关注的有效信息。此外,如果用户正在进行一些点击操作,那么用户很有可能会误触到带有超链接功能的广告界面,从而打开广告界面所对应的超链接,因此在智能终端上显示广告界面既浪费时间,又浪费流量,进而给用户的使用带来不变。
因而现有技术还有待改进和提高。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种禁止广告展示的方法及系统,以解决在智能终端上显示广告界面既浪费时间,又浪费流量,进而给用户的使用带来不变的问题。
为了解决上述技术问题,本发明所采用的技术方案如下:
一种禁止广告展示的方法,其包括:
接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;
根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;
广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。
所述禁止广告展示的方法,其中,所述接收用户输入的禁止广告展示的控制指令之前包括:
将需要展示的所有广告按照显示类型以及展示位置进行分类;
按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
所述禁止广告展示的方法,其中,所述按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件之后还包括:
获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID。
所述禁止广告展示的方法,其中,所述根据所述禁止条件在预设数据库查找相应的bundle文件,并停运查找到的所有bundle文件具体包括:
根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
调用BundleContext的停止接口停运查找到的所有bundle文件。
所述禁止广告展示的方法,其中,所述广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示具体包括:
向系统发送所述bundle文件被停运的系统广播;
调用所述bundle文件对应的广告DSK的应用程序根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
一种禁止广告展示的系统,其包括:
接收模块,用于接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;
查找模块,用于根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;
广播模块,用于广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。
所述禁止广告展示的系统,其还包括:
分类模块,用于将需要展示的所有广告按照显示类型以及展示位置进行分类;
生成模块,用于按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
所述禁止广告展示的系统,其还包括:
获取模块,用于获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID。
所述禁止广告展示的系统,其中,所述查找模块具体包括:
查找单元,用于根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
调用单元,用于调用BundleContext的停止接口停运查找到的所有bundle文件。
所述禁止广告展示的系统,其中,所述广播模块具体包括:
发送模块,用于向系统发送所述bundle文件被停运的系统广播;
禁止单元,用于调用所述bundle文件对应的广告DSK的应用程序控制根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
有益效果:与现有技术相比,本发明提供了一种禁止广告展示的方法及系统,所述方法包括:接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。本发明通过对bundle文件的停运,而使得调用任一被停运bundle文件对应的广告SDK的应用程序禁止播放所述广告,这样可以实现禁止系统中所有广告的展示,并且,根据禁止条件可以细化禁止广告的展示,实现细粒度化的禁止广告展示的功能。
附图说明
图1为本发明提供的禁止广告展示的方法较佳实施的流程图。
图2为本发明提供的禁止广告展示的方法中步骤S100之前包括的分类步骤的流程图。
图3为本发明提供的禁止广告展示的方法中步骤S200的流程图。
图4为本发明提供的禁止广告展示的方法中步骤S300的流程图。
图5为本发明提供的禁止广告展示的系统的结构原理图。
具体实施方式
本发明提供一种禁止广告展示的方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端设备可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用程序于固定类型的终端。
下面结合附图,通过对实施例的描述,对发明内容作进一步说明。本实施例中,所述方法应用的终端设备的系统嵌入OSGI框架。
请参照图1,图1为本发明提供的禁止广告展示的方法的较佳实施例的流程图。所述方法包括:
S100、接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件。
具体地,所述禁止条件可以是用户通过终端设备的控制界面输入的,也可以根据在开启禁止广告展示功能时,在系统设置中选取的禁止所有广告选项与部分禁止选项,其中,每个禁止选项对应一个禁止条件,当所述禁止选项被选择时,满足所述禁止条件的广告会被禁止。例如,所述禁止条件为图片广告等。在实际应用程序中,所述禁止条件还可以包括广告展示的位置,例如,开机广告等。也就是说,所述禁止条件可以设置禁止广告的类型以及广告展示的位置,以细粒度化的禁止广告展示的功能。
进一步,为了便于根据所述禁止条件查找其对应的广告SDK,可以预先将广告SDK按照显示类型以及展示位置进行分类,这样可以根据禁止条件保护的广告类型以及广告展示的位置确定对应相应的广告类型,提高根据禁止条件查找广告的效率,减少了禁止广告展示的功能的时间消耗。相应的,如图2所示,所述接收用户输入的禁止广告展示的控制指令之前包括:
S001、将需要展示的所有广告按照显示类型以及展示位置进行分类;
S002、按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
具体的来说,在所述步骤S001中,所述根据所述显示类型以及展示位置对所述广告进行分类具体可为以先按照所述显示类型进行分类,将同一显示类型的广告划分为一类,例如,显示类型为图片的为一类,显示类型为视频的为一类,显示类型为文字的为一类等。在根据显示类型进行分类之后,在对每一类均根据展示位进行分类,例如,展示位置为开机广告的划分为一类等。这样使得显示类型以及展示位置均相同的广告被划分为一类。在本实施例的变形实施例中,所述分类也可以先根据展示位置进行划分,之后在对划分得到的每一个均根据显示类型进行再次划分,以得到最后分类;所述分类还可以是仅按照展示位置/显示类型进行分类得到的分类。
在所述步骤S002中,所述bundle是OSGI中的模块模型。标准Java平台的jar包中包含有class文件以及相应的资源文件,bundle为增加了元数据的jar包。一个bundle中包含了java和数据资源,所述数据资源可以是HTML文件、帮助文档以及图标等。进一步,从用户层可以把bundle理解为一个功能模块。bundle可以从项目中导入导出,并且能够与项目中的其他bundle共享jar文件。bundle为OSGI框架提供服务,是OSGI服务框架中唯一需要部署的实体。bundle一旦开始运行,就会通过OSGI框架向框架中其他bundle提供功能和服务。也就是说,所述bundle为一个模块化的物理单元,以jar文件形式包含代码、资源和元数据,其中jar文件的边界也作为执行时逻辑模块化的封装边界。
所述OSGI为OSGI服务平台,其包括OSGI框架和OSGI标准服务。所述OSGI框架是实现并提供OSGI功能的运行环境,OSGI标准服务定义用于执行任务的可重用API。所述OSGI框架和标准服务的规范由OSGI联盟管理。OSGI框架在创建基于OSGI的应用程序时起着核心作用,因为它是应用程序的执行环境。所述OSGI联盟在OSGI框架规范中定义了框架的正确行为,这样就可以基于一个定义清晰的API进行编程。这个框架是依据OSGI规范中定义的三个概念层分别为模块层、生命周期层和服务层。所述模块层关注于打包和共享代码。模块层定义了OSGI模块的概念,并将之称为一个bundle。所述bundle是一个包含元数据(关于数据的数据)的jar文件,由类文件和相关资源组成,并且其是构成一个特定应用程序的多个逻辑模块。所述生命周期层关注于提供执行时模块管理和对底层OSGI框架的访问。生命周期层定义了在OSGI框架中是如何动态安装和管理。生命周期层定义了bundle生命周期的操作(如安装、更新、启动、停止和卸载)。这些生命周期的操作使得可以用一种定义明确的方式动态地提供、管理和改进应用程序。所述服务层关注于模块,特别是模块内的组件间的交互和通信。服务层支持和促成了一个灵活的应用程序编程模型。主要涉及面向服务的发布、查找和绑定交互模式,即服务提供者将服务发布到服务注册中心,然后服务客户端通过搜索服务注册中心,查找可供使用的服务。
在所述步骤S002中,所述广告SDK为广告软件开发包SDK,其是采用java编写并编译生成jar包,需要展示所述广告的应用程序通过打包所述jar包来调用所述广告软件开发包SDK中的接口,并通过所述接口接收广告平台分发的广告。相应的,在所述OSGI平台中,应用程序需要加载bundle文件来来调用所述广告软件开发包SDK中的接口,以接收广告平台分发的广告。
进一步,所述将将每个广告SDK转换为相应的bundle文件具体可为:根据所述广告SDK生成其对应的jar包,并将所述jar包转换为bundle文件,其中,所述bundle文件是添加元数据的jar文件。所述元数据包括:可读信息、bundle识别信息和代码可见性信息。
所述可读信息为使用者提供该bundle的相关帮助信息,其可以包括:
Bundle-Name:作为bundle文件的一个缩写名;
Bundle-Description:描述bundle文件的功能;
Bundle-DocURL:提供有关bundle文件的文档;
Bundle-Category:定义了一组由逗号分隔的分类名;
Bundle-Vendor:有关bundle提供商的信息;
Bundle-ContactAddress:有关bundle提供商的信息;
Bundle-Copyright:有关bundle提供商的信息。
所述bundle文件识别信息为识别bundle文件的唯一标识,所述标识包括bundle文件的符号名称和bundle版本号。所述bundle文件的符号名称Bundle-SymbolicName与java中包命名方法一致,可直接采用包名作为符号名称。所述bundle版本号Bundle-Version根据OSGI规范约定,其格式可以为:主版本号.次版本号.微版本号.限定符。在实际应用程序中,所述bundle文件识别信息还可以包括Bundle-ManifestVersion,用于确定OSGI框架根据此元数据信息确定采用哪个版本的OSGI规范来处理所述bundle文件。
所述代码可见性信息为定义代码的内部可见性;所述代码可以行包括Export-Package导出内部代码,一个为了与其它bundle文件共享而公开的、由逗号分隔的内部bundle包;Import-Package:导入外部代码,内部bundle代码需要的、来自其它bundle文件并由逗号分隔的一组包。
在本实施例中,所述在将jar文件转化为bundle文件,可利用eclipse的BndTools插件、jar命令和bnd工具,在jar文件的META-INF/ MANIFEST.MF条目里增加上述元数据并转化为bundle文件,其中,上述bnd工具由OSGI技术负责相关人员开关,提供了大量的专门为OSGI设计的命令行。
进一步,在所述步骤S002中,根据所述分类生成的bundle文件是将广告按照显示类型进行分类的广告SDK_图片_ bundle文件、广告SDK_文字_bundle文件、广告SDK_视频_bundle文件等,也可以是将广告按照展示的位置进行分类的SDK_贴片广告_bundle文件、广告SDK_开机广告_bundle文件、广告SDK_定时广告_bundle文件等。在实际应用程序中,也可以是同时按照显示类型以及展示位置分类的广告SDK_图片_开机广告_bundle文件,广告SDK_图片_定时广告_bundle文件等。
在本发明的一个实施例中,在根据按照显示类型以及展示位置对广告分类,并跟分类生成对应的bundle文件后,还可以创建一个数据库,用于存储所有bundle文件的相关信息,以使得根据禁止条件在所述数据库中查找到其对应的bundle文件,提高查找的速度。相应的,在所述按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件之后还可以包括:
获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID。
具体地,所述BundleContext接口为OSGI服务平台的生命周期层的接口,所述生命周期层包括Bundle、BundleContext和BundleActivator接口。Bundle接口代表了一个已安装到框架中的bundle文件,允许对其执行状态操作。在OSGI框架中每个Bundle实体都对应一个Bundle对象,Bundle对象是对Bundle实体的抽象。每个Bundle都对应一个唯一的并且在生命周期中保持不变的ID号码,该ID由框架进行分配。Bundle接口中定义了Bundle的基本信息的获取方法,包括:状态的获取、版本的获取、ID的获取等,还定义了Bundle的管理方法,包括:更新、卸载、启动、停止等。所述BundleContext接口是指模块在框架中运行时的上下文。在启动模块时,框架会创建一个对应的BundleContext对象,所述BundleContext对象不能在模块之间进行传递,这样可以保障模块的安全和资源的正确分配。
在本实施例中,为了方便说明通过BundleContext接口安装并启动所有bundle文件,将在终端设备系统中嵌入OSGI框架称为OsgiFramework。将该OsgiFramework实现为终端设备系统的服务记为Servie,并将bundle指bundle文件,Bundle指OSGI框架接口。
所述通过BundleContext接口安装并启动所有bundle文件具体可以为通过FrameWorkFactory.newFrameWork()方法获取所述BundleContext接口,并通过所述BundleContext接口安装并启动所有bundle文件。
具体地,所述终端设备系统可以通过建立GetFramework继承自系统中的服务GetFrameworkService,在服务实现完毕后通过系统中的服务管理器ServiceManager将该服务添加进系统服务中。在将所述ServiceManager将该服务添加进系统服务中后,通过FrameWorkFactory.newFrameWork()方法获取框架实例,并通过Framework.start()方法启动所述框架实例。在所述框架启动后,可通过系统binder机制,向应用程序层提供GetFrameworkService服务的代理,如GetFrameworkServiceProxy,通过该OSGI框架服务代理,访问到GetFrameworkService服务中相关接口,如,BundleContext接口等。
示例性的,所述获取BundleContext接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID具体可以包括:
通过GetFrameworkService的代理GetFrameworkServiceProxy,获取到OSGI框架实例。
具体地,可以通过getFrameworkInstance()方法获取OSGI框架实例。
调用Framework.getBundleContext()方法获取BundleContext接口。
调用BundleContext.install(String location)方法安装bundle文件,直至所有bundle文件安装完毕。
具体地,所述参数location是该bundle文件存放路径。当安装成功后,会返回已安装的Bundle的 Bundle ID(Bundle Identifier)。Bundle ID是运行期最常用的标识符。它是由OSGI框架自动分配的一个长整型数字,在Bundle整个生命周期内(包括Bundle更新、卸载之后)都不会改变,甚至在OSGI框架重启后都能保留下来。Bundle ID是在Bundle安装过程中由OSGI框架根据Bundle安装时间的先后次序,由小到大进行分配的。可以通过Bundle接口的getBundleId()方法来获取当前Bundle的ID。
调用安装成功返回的Bundle的getBundleId()方法来获取当前Bundle的ID,并通过调用Bundle的getSymbolicName()方法和getVersion()分别获取到该bundle的符号名称和版本号。
建立数据库存储每一个bundle ID、bundle文件包名、bunlde的符号名称和版本号属性;
通过BundleContext.start()方法启动bundle文件,以使得所述bundle文件对应的广告SDK启动。
S200、根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件。
具体地,所述禁止条件可以为全部禁止也可以是部分禁止条件。当用户选择禁止所有广告的禁止条件,则遍历查找数据库,获取到所有广告SDK对应的bundle文件。如果用户选择部分禁止的禁止条件,根据选项条件查找数据库,获取到符合用户禁止条件的广告SDK对应的bundle文件,比如,用户选择禁止图片广告的展示,则获取到广告SDK_图片_bundle文件。
示例性的,如图3所示,所述根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件具体可以包括:
S201、根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
S202、调用BundleContext的stop接口停运查找到的所有bundle文件。
值得说明的,所述BundleContext的stop接口的调用方式与上述调用BundleContext接口启动并安装bundle文件的过程一样,这里就不在赘述。
S300、广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。
具体地,所述广播查找到的所有bundle文件被停运的通知指的是系统广告所述bundle文件被停运的通知,这样系统安装的应用程序在调用所述bundle文件对应的广告DSK的应用程序会根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,进而禁止展示所述广告。在本实施例中,所述预设协议为当应用程序向广告SDK对应的bundle文件输入参数:bundle包名、广告展示类型及广告展示位置信息时,所述bundle文件会向应用程序返回对应的广告物料。也就是说,当应用程序向所述被停运的bundle文件输入参数:bundle包名、广告展示类型及广告展示位置信息,而所述bundle文件被停运,从而无法向其反馈对应的广告物料,以使得所述应用程序无法展示所述广告。
示例性的,如图4所示,所述广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示具体包括:
S301、向系统发送所述bundle文件被停运的系统广播;
S302、调用所述bundle文件对应的广告DSK的应用程序根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
具体地,当查找到的所有bundle文件被停运后,发送系统广播通知调用查找到的所有bundle文件对应的广告SDK的所有应用程序。这样在应用程序调用被停运的bundle文件时,会根据预设协议接收到所述通知,使得当应用程序调用广告SDK获取广告物料时,将根据获取到的广播通知获取广告物料失败,从而实现禁止广告展示的目的。
本发明还提供了一种禁止广告展示的系统,如图5所示,其包括:
接收模块100,用于接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;
查找模块200,用于根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;
广播模块300,用于广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示。
所述禁止广告展示的系统,其还包括:
分类模块,用于将需要展示的所有广告按照显示类型以及展示位置进行分类;
生成模块,用于按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
所述禁止广告展示的系统,其还包括:
获取模块,用于获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID。
所述禁止广告展示的系统,其中,所述查找模块具体包括:
查找单元,用于根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
调用单元,用于调用BundleContext的停止接口停运查找到的所有bundle文件。
所述禁止广告展示的系统,其中,所述广播模块具体包括:
发送模块,用于向系统发送所述bundle文件被停运的系统广播;
禁止单元,用于调用所述bundle文件对应的广告DSK的应用程序控制根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
上述禁止广告展示的系统的各个模块在上述方法中已经详细说明,在这里就不再一一陈述。
在本发明所提供的实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种禁止广告展示的方法,其特征在于,其包括:
接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;
根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;
广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示;
所述禁止条件包括禁止广告的类型以及广告展示的位置;
所述接收用户输入的禁止广告展示的控制指令之前包括:
将需要展示的所有广告按照显示类型进行分类,将同一显示类型的广告划分为一类;
对划分后所得到的每一类广告均根据展示位进行分类,将同一展示位的广告划分为一类;
按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
2.根据权利要求1所述禁止广告展示的方法,其特征在于,所述按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件之后还包括:
获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundle ID。
3.根据权利要求1所述禁止广告展示的方法,其特征在于,所述根据所述禁止条件在预设数据库查找相应的bundle文件,并停运查找到的所有bundle文件具体包括:
根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
调用BundleContext的停止接口停运查找到的所有bundle文件。
4.根据权利要求1所述禁止广告展示的方法,其特征在于,所述广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示具体包括:
向系统发送所述bundle文件被停运的系统广播;
调用所述bundle文件对应的广告DSK的应用程序根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
5.一种禁止广告展示的系统,其特征在于,其包括:
接收模块,用于接收用户输入的禁止广告展示的控制指令,其中,所述控制指令携带需禁止展示的广告的禁止条件;
查找模块,用于根据所述禁止条件在预设数据库内查找相应的bundle文件,并停运查找到的所有bundle文件;
广播模块,用于广播查找到的所有bundle文件被停运的通知,以使得调用任一被停运bundle文件对应的广告SDK的应用程序根据所述广播禁止所述广告的展示;
所述禁止条件包括禁止广告的类型以及广告展示的位置;
分类模块,用于将需要展示的所有广告按照显示类型进行分类,将同一显示类型的广告划分为一类;对划分后所得到的每一类广告均根据展示位进行分类,将同一展示位的广告划分为一类;
生成模块,用于按照分类结果分别编写生成相应的广告SDK,并将每个广告SDK转换为相应的bundle文件。
6.根据权利要求5所述禁止广告展示的系统,其特征在于,其还包括:
获取模块,用于获取BundleContext的启动接口安装并启动所有bundle文件,并根据所有bundle文件建立所述预设数据库,其中,所述数据库至少包含每个bundle文件的bundleID。
7.根据权利要求5所述禁止广告展示的系统,其特征在于,所述查找模块具体包括:
查找单元,用于根据所述禁止条件确定其对应的广告SDK,并根据所述广告SDK在所述预设数据库内查找相应的bundle文件;
调用单元,用于调用BundleContext的停止接口停运查找到的所有bundle文件。
8.根据权利要求5所述禁止广告展示的系统,其特征在于,所述广播模块具体包括:
发送模块,用于向系统发送所述bundle文件被停运的系统广播;
禁止单元,用于控制调用所述bundle文件对应的广告DSK的应用程序根据预设协议接收所述广播,并根据所述广播禁止获取到所述广告,以禁止展示所述广告。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710325799.5A CN108874476B (zh) | 2017-05-10 | 2017-05-10 | 一种禁止广告展示的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710325799.5A CN108874476B (zh) | 2017-05-10 | 2017-05-10 | 一种禁止广告展示的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108874476A CN108874476A (zh) | 2018-11-23 |
CN108874476B true CN108874476B (zh) | 2021-09-14 |
Family
ID=64287692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710325799.5A Active CN108874476B (zh) | 2017-05-10 | 2017-05-10 | 一种禁止广告展示的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108874476B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103745152A (zh) * | 2013-12-11 | 2014-04-23 | 深圳市欧珀通信软件有限公司 | 一种基于移动终端的广告屏蔽方法及系统 |
CN105511902A (zh) * | 2015-11-09 | 2016-04-20 | Tcl集团股份有限公司 | 一种安卓平台模块动态加载的方法及系统 |
CN106028089A (zh) * | 2016-06-24 | 2016-10-12 | 武汉斗鱼网络科技有限公司 | 一种视频直播画面屏蔽投放广告的方法及装置 |
CN106548382A (zh) * | 2016-12-21 | 2017-03-29 | Tcl集团股份有限公司 | 一种广告屏蔽方法及智能终端 |
-
2017
- 2017-05-10 CN CN201710325799.5A patent/CN108874476B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103745152A (zh) * | 2013-12-11 | 2014-04-23 | 深圳市欧珀通信软件有限公司 | 一种基于移动终端的广告屏蔽方法及系统 |
CN105511902A (zh) * | 2015-11-09 | 2016-04-20 | Tcl集团股份有限公司 | 一种安卓平台模块动态加载的方法及系统 |
CN106028089A (zh) * | 2016-06-24 | 2016-10-12 | 武汉斗鱼网络科技有限公司 | 一种视频直播画面屏蔽投放广告的方法及装置 |
CN106548382A (zh) * | 2016-12-21 | 2017-03-29 | Tcl集团股份有限公司 | 一种广告屏蔽方法及智能终端 |
Non-Patent Citations (1)
Title |
---|
Android应用广告插件的安全机制分析;兰雪;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170215;第四章 * |
Also Published As
Publication number | Publication date |
---|---|
CN108874476A (zh) | 2018-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102971688B (zh) | 跨平台应用程序框架 | |
US10194288B2 (en) | Sticker distribution system for messaging apps | |
US9798555B2 (en) | Application implementation method and apparatus | |
CN103970563B (zh) | 动态加载安卓类的方法 | |
CN102520987B (zh) | 应用程序在线体验与安装方法、装置、服务器及管理系统 | |
CN109445783B (zh) | 由服务驱动的动态配置应用的构建方法及装置 | |
CN110688232B (zh) | 应用程序调用方法、终端设备及计算机可读存储介质 | |
CN104049986A (zh) | 插件加载方法及装置 | |
CN106569880B (zh) | 一种Android应用间动态共享资源的方法及系统 | |
CN104090749A (zh) | 一种WinCE产品界面主题更新变换处理方法及系统 | |
CN103955364A (zh) | 一种适用于手机的前端组件方法 | |
CN103049320A (zh) | 在浏览器中启动外部应用程序的方法和装置 | |
CN104750528A (zh) | 一种Android程序中的组件管理方法和装置 | |
CN111930382B (zh) | 应用页面的接入方法、装置及设备 | |
CN110597564A (zh) | 一种安装包构建和业务组件加载方法、装置、终端设备 | |
CN110908734A (zh) | 基于插件化的应用组合方法、装置、终端设备及存储介质 | |
CN104699503A (zh) | 一种替换安卓系统中函数的执行逻辑的方法及装置 | |
CN109213533B (zh) | 一种广告sdk动态加载方法、装置及终端 | |
CN108845800B (zh) | 一种组件扩展功能的实现方法、装置、设备及存储介质 | |
CN108268261B (zh) | 一种智能终端的ui定制方法、存储介质及智能终端 | |
CN106778270B (zh) | 一种恶意应用程序的检测方法及系统 | |
CN110673827B (zh) | 基于安卓系统的资源调用方法及装置、电子设备 | |
CN104267979A (zh) | 在桌面启动器Launcher上启动应用的方法、装置和终端 | |
CN109857374B (zh) | 移动应用的开发方法及装置 | |
CN108874476B (zh) | 一种禁止广告展示的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 516006 TCL science and technology building, No. 17, Huifeng Third Road, Zhongkai high tech Zone, Huizhou City, Guangdong Province Applicant after: TCL Technology Group Co.,Ltd. Address before: 516006 Guangdong province Huizhou Zhongkai hi tech Development Zone No. nineteen District Applicant before: TCL RESEARCH AMERICA Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |