精华内容
下载资源
问答
  • 随着手机的流行以及各种APP软件的泛滥,如今信息流广告也是遍地都是,权威方面的信息流数据并不多,而其他小数据信息流难点在于数据统计分析,今天我们就系统了解下,大家可根据自身情况选择最适合自身的方法。...

    随着手机的流行以及各种APP软件的泛滥,如今信息流广告也是遍地都是,权威方面的信息流数据并不多,而其他小数据信息流难点在于数据统计分析,今天我们就系统了解下,大家可根据自身情况选择最适合自身的方法。

    比重分析法

    指通过计算某个维度所占维度总量的比例,从而去判断投放方向或投放效果。

    公式:比重=某维度数值 / 总量 X 100%

    举个栗子。

     

    如下图,是一套营销数据,从中通过计算,我们可以清楚地了解到每个地区:

    • 每个地区花了多少钱?
    • 每个地区转化是多少?

     

    以北京地区为例,它的转化低于消费,说明整体转化并不好,那我们就需要思考:

    • 转化不好是哪出了问题?
    • 目前北京的消费比例符合我的目前推广策略吗?

     

    而河北地区,转化高于消费,证明该地区转化很好,那我们就需要思考:

    • 该地区需要加钱吗?

     

    通过对各个指标的占比进行分析,我们可以清楚地了解到每个地区的情况。

    这便是比重分析法。

    注:该方法较为适合多产品、多地区推广的账户。

    倒推法

     

    倒推法,是竞价推广中常用的一种方法,但更多被应用于战略目标的制定。

    即:根据历史数据,将成交—线索—对话—点击—展现倒着进行推理的过程。

     

    比如:本月目标线索量为50,参考线索率为50%,那么我们就需要100次对话才能完成;如果100次对话,那么通过倒推就需要4000次点击才能完成对话;如果点击率为5%,那么我们就至少需要20万以上的展现才能完成既定目标。

    蒙牛的牛根生曾说过:只修改手段,不修改目标。而通过各个维度的细分化,当完不成目标时我们可以明确知道应该主要对哪部分进行优化。

     

    关键词四象限分析

     

    关键词是竞价推广之根本,那么便可通过对关键词进行系统化分类,从而有针对性地进行优化。

    通常,主要分为以下四类:

     

    01、有对话成本低

    像这类词,大都集中在品牌词等,且它属于优质词的一类,针对较为优秀的词可以进行放量操作

    例如:加词、提价、放匹配等等。

     

    02、有对话成本高

    像这类词,主要集中在产品词和行业大词。

    点击成本高,往往说明点击流量多且杂,这类情况建议有条件地放量操作,即:获取流量的同时,去控制流量的质量。

    主要操作有:

    • 加词、
    • 优化账户结构(使账户流量结构更精准)
    • 优化创意(利用创意筛选部分杂质流量)

    03、无对话成本高

    这种情况,往往都是没有集中词性,通常可根据以下两点来进行判断下一步的操作:

    • 均价高还是低?
    • 流量大还是小?

    若流量很大,均价很低,往往通过优化页面来进行;若均价很高,流量一般,便是进行降价操作;若是因为流量意向低,建议进行收匹配操作。

     

    04、效果差成本低

    像这种情况,大多数都为“只点击一次就产生了对话”,我们就以为是优质词,便进行放量操作,但也有可能是意外。

    所以,像上述这种情况,应保守放量,等明确情况后在进行大肆放量操作。

    辅助工具分析

    Shareinstall其实是一个APP的推广辅助工具。APP开发者可以通过Shareinstall更精准的进行产品的推广。另外,Shareinstall还是一款渠道统计工具,能够全方位的分析渠道推广效果。

    APP推广统计-团队地推统计,业务员个人推广统计

    问题描述:

    当你的App上线之后,我们接下来面临的是推广,但是很多时候我们去做地推、业务员的推广效果都没法进行一个有效的统计,导致业务员的推广绩效无法准确的考核。

    问题解决:

    采用Shareinstall的方案,地推统计,业务员个人推广业绩都可以进行精确的统计,为App推广统计提供有力的保障。

     

    很多时候,我们之所以数据分析难,是因为我们根本不知道怎么做。

    而通过对上述数据分析方法的了解,可帮助我们大幅度提升数据分析的效率,明确优化方向。

    展开全文
  • 视频服务器是系统软件,无论用户使用什么操作系统,都可以使用户视频。某些视频服务器基于Linux与操作系统无关,可以安装在任何计算机上。很少有人针对特定的平台,例如Windows,Linux或Mac。 什么是视频...

    视频流服务器是系统软件,无论用户使用什么操作系统,都可以使用户流视频。某些视频流服务器基于Linux与操作系统无关,可以安装在任何计算机上。很少有人针对特定的平台,例如Windows,Linux或Mac。

    什么是视频流服务器?

    远程提供和管理视频媒体内容的服务器软件称为“视频流服务器”。并非所有的视频播放器都可以与视频流服务器一起使用,而是需要一个完美的视频播放器来与远程服务器一起使用来缓冲和播放它,而无需下载诸如VLC。此方法还可以保护发布者以保护其内容免受盗版。视频媒体服务器利用特定的计算来打包媒体文档或信息,以便在系统或Internet关联上进行交换。

    什么是视频流?

    视频流是一种媒体流,用户可以在其中流存储在视频流服务器上的视频。用户可以使用其本地播放器或Web播放器通过Internet或本地网络从远程视频流服务器流式传输媒体文件。这样的服务器允许观看视频,而无需将其下载到本地台式机或智能手机上。

    例如,YouTube,Dailymotion,Netflix,Amazon Prime和Hulu都是视频点播网站,您可以在其中免费或订阅后观看视频。这些知名人士使用视频流服务器来创建视频点播(显示)(VOD)呼叫。VOD允许用户在需要等待特定的广播时间的情况下选择和观看视频或收听音频内容,例如音乐,电影和电视节目。

    在线提供了数十个免费和开源的视频流服务器,以流式传输和共享视频。今天,我们在本文中列出了最好的。而且,这些媒体流服务器是企业级的,可以大规模处理流。

    最佳免费和开源视频流服务器软件

    Red5开源媒体服务器

    red5开源视频流服务器

    Red5是一个开源媒体服务器,具有开源和付费许可版本。它支持各种实时流。该媒体服务器的设计非常灵活,可以使用简单的插件来增强功能。该插件架构还允许几乎所有的VOD的定制和现场直播的场景。

    使用Red5视频流服务器解决方案的知名度不高的亚马逊和Facebook。Red5现在用于Flash之外的实时流传输,包括HLS,WebSocket和RTSP。作为Google Summer of Code的一部分,Red5团队目前正在构建对WebRTC的支持,以在没有插件的情况下在浏览器中实现流式传输。

    MistServer开源

    MistServer开源视频流服务器

    MediaServer Pro版本的MistServer开源版本,但是开源版本中没有软件限制。专业版和开源Miniserver版之间的唯一区别是功能。免费的开源媒体服务器版本的功能少于专业版。开源版本是On the fly流重新打包器,具有基于浏览器的管理界面,低占用空间的高性能,模块化设计,低延迟,多平台,智能HTML5元播放器,API,流元数据和基本分析集成。


    其他一些功能:

     

    • 流密码保护
    • 快速启动时间
    • 每个客户一组二进制文件,
    • 实时输入:RTMP单比特率
    • VoD输入:FLV,MP3,视频输出:MP4,HLS,RTMP(单比特率),MPEG-TS(单播),HDS,FLV,MP3,OGG,
    • 流分析仪:RTMP,MP4,RTMP,OGG,FLV,DTSC
    • 视频编解码器:H264,Flash,Theora
    • 音频编解码器AAC,MP3,Flash,Vorbis
    •  标准支持

    支持的操作系统: Unix,Solaris,Linux x86,Linux x86_64,Linux ARM,Linux MIPS,OS X,Windows 64位。

    Kurento媒体服务器

    Kurento媒体服务器Webrtc用于Windows,Linux和MAc的开放资源流服务器

    Kurento是一个开源WebRTC媒体服务器。它既支持音频和视频,又提供了一组客户端API,使开发人员可以为WWW和智能手机平台创建高级视频应用程序。Kurento Media Server的功能包括视听流的组通信,转码,记录,混合,广播和路由。

    Kurento音频/视频流服务器提供媒体处理功能,涉及计算机视觉,视频索引,增强现实和语音分析。Kurento可以轻松集成第三方媒体处理算法,例如语音识别,情感分析,面部识别等。

    Streamhash – Netflix Clone Free Lite版本

    Streamhash-Netflix Clone Free Lite版本的视频流服务器

    Streamhash可以创建基于订阅的视频点播流媒体网站,如Netflix和Amazon Prime,或创建视频流(如Youtube)或实时视频流(如Facebook Live)。

    Streamhash的三个产品或脚本:

    StreamView:这是一个Netflix Clone脚本,能够像Netflix和Amazon Prime一样进行创建。

    StreamNow:该产品具有创建实时流视频选项的功能,就像Facebook Live和YouTube Live一样。您可以制作实时流媒体广告以产生利润。

    StreamTube:这是YouTube克隆脚本,用于创建类似YouTube或Vimeo的网站。用户可以注册,上传视频,并允许使用视频广告和横幅广告来轻松赚钱。

    它提供了三个版本的免费精简版,(699美元)终极版和(199美元)豪华版。精简版适用于终生,并具有以下基本功能:

    StreamView免费版功能: 

    • 100%的源代码
    • 网络脚本
    • 无限的用户
    • 无限的视频上传
    • 动态管理面板
    • 响应式前端
    • 类别和子类别
    • 跟踪用户数
    • 添加/编辑页面
    • 谷歌分析

    Clipbucket:企业开源视频广播解决方案

    Clipbucket企业开源视频广播解决方案

    ClipBucket是一种开源多媒体管理脚本,可让您从一个平台管理视频,照片和音频。您可以创建共享诸如Youtube,Metacafe,Veoh,Hulu或任何其他网站的网站。它是创建YouTube类似克隆网站的最受欢迎的网站之一。它还提供了内部管理系统,该系统允许用户通过内置的消息传递服务进行通信和发送消息。Clipbucket视频流服务器提供了FFMPEG等高级模块,可以进行实时视频转换。因此,用户可以使用HTML 5 Players直接流式传输它。

    Plex媒体服务器

    Plex Media Server开源视频流服务器

    Plex Media服务器带有两个组件:Plex Media Server和Plex客户端。Plex Media服务器是一个桌面应用程序,具有Windows,Linux和MacOS兼容性。另外,某些NAS设备提供内置的Plex Media服务器选项,可以将NAS服务器转变为音频/图像/视频流服务器。您还可以在Dropbox,Google Drive和OneDrive上不带任何硬件的情况下安装Plex云。甚至Plex Media Server也可以在NETGEAR Nighthawk X10 Wireless上运行。


    该客户端服务器为几乎所有播放媒体的平台提供客户端。这些客户端可用于移动设备,智能电视和流媒体盒,Web应用程序以及Plex家庭影院。请参阅:在Ubuntu 19.04上安装Plex媒体服务器-最简单的方法

     

    openflixr 2

    OpenFLIXR Media Server全部放在视频跟踪服务器上

    OpenFLIXR Media Server是一款功能完善的多合一媒体服务器,可以处理视频,图像和音频。您可以将其安装在VirtualBox,VMware,ESXi,Parallels Desktop,KVM或Microsoft Hyper-V等任何虚拟机上。它汇集了一些著名的开源项目,例如CouchPotato,SickRage,Headphones和SABnzbd。完全基于网络,包括监视和管理工具。它还具有Plex Media Server和torrent

     

    公开直播

    Opencast视频流服务器,用于录制和分发事件视频

    Opencast是视频流服务器,但用于公司活动。它使您可以在一周的特定日期和时间录制任何视频或事件时间表,并将其分发到不同的频道。

    特征:

    • 分屏播放器,可同时观看视频和幻灯片内容
    • 热图集成可获取最受关注的视频分析
    • REST API使扩展或集成播放器变得容易
    • 轻松的播放器界面自定义和本地化
    • 可自定义的权限设置
    • 用户目录集成(LDAP,CAS等)
    • HTTP实时流(HLS)的自适应流支持
    展开全文
  • 但对于抖音运营者来说,“限”这个词依然是个大麻烦。一旦被抖音官方限,账号宛如被宣判了“死刑”。尤其是对于一些不清楚抖音基本规则的新手抖音运营者,很容易就会被限。 我们就对几种常见的广告营销行为...

    越来越多的人看到了抖音运营的流量价值,纷纷入局。但对于抖音运营者来说,“限流”这个词依然是个大麻烦。一旦被抖音官方限流,账号宛如被宣判了“死刑”。尤其是对于一些不清楚抖音基本规则的新手抖音运营者,很容易就会被限流。

    我们就对几种常见的广告营销行为进行一个详细的解释。

    所谓广告营销是指商家通过广告的方式对产品进行宣传推广,促成消费者的直接购买。那么这里的广告除了硬广就是软广了。

    有用户收到系统消息说他的账号被评为广告营销。那么这到底是什么原因呢?官方的解释有以下几种,

    一:非企业认证号在视频中展示商家地址、商家联系方式或二维码等信息。

    二:视频中植入硬性广告元素,如商品打折、信息价格等。

    三:视频内容为好物安利,并通过非官方的渠道进行引导购买。

     

    注意了,如果你是企业用户,可以选择进行企业认证,认证,通过后可以避免被误处罚,并获得企业号多种权益哦。

    首先我们来说说什么样的内容会被判定为硬性广告。视频中包含硬广话术表达自己是卖东西的商家的词,且视频有商品展示向发货走单,订单上新找买家。

     

    褒奖转让、爆款、定制、秒杀等这些字眼,描述商品或店铺优惠活动的词,如大减价打折买一赠一等。

    “今天给大家上一款爆款抖音水瓶十八块一瓶,今天优惠二十块,三瓶包邮送到家买它”

     

     

    视频中出现商业活动加时间、地点等词,以文字或音频的形式强调商家或店铺联系方式。

    “嘿,就是我悄悄告诉你,抖音城市广场一切价格促销满二百减五十”,

     

     

    对于一些线上店铺视频中展示平台和店铺名或店铺链接或网址。对于一些线下店铺明显引导用户使用软件查询或提供详细地址。

    “今天我们去吃一家非常好的火锅店,坐在短大厦十六层出电梯,右手边第一家”。

     

    在视频标题中,以文字或音频形式引导加微信或电话在店铺背景下展示商品。比如在服装店背景下主体展示不同衣服,穿着在鞋店鞋厂背景下主体展示不同鞋子。

    “纯棉小t 恤,宽松透气,八十斤到一百六十斤都能穿”

     

    以上这些行为可以统称为硬性广告营销行为。

    讲述了广告营销中的硬性广告。那么猫哥来讲讲另一种广告营销,就是软广同时在评论或标题或视频进行引流推广的行为,注意啦,单纯进行好物推荐,开箱分享、测评内容等都是平台所允许的,

    但是如果涉及引流或推广行为,则会触犯平台的规则。

     

    “你看这个矿泉水入口清凉均匀,如果你们也想买,可以去关注这个XX哦。”

    好物推荐种草,直接推荐商品并进行引流推广行为。

     

    “2020第一次开箱,大家都知道我非常喜欢收集各种各样的矿泉水。这个矿泉水非常火,很难买。”

    然后精准的给大家开箱这个是我是在XX平台买到,大家可以去抢购一下。

     

    那如果确实是自己违规了,该怎么恢复账号呢?

     

    官方会对你的处罚随着违规次数增加而处罚增加,减少视频推荐账号或视频搜索不可见和禁止投稿等梯度处罚。等到处罚结束达到重新评估的标准,账号就可以被重新评估了。

    注意这里说的十天十个新投稿视频等都是必要条件,也就是两个都要满足才可以哦。

    为此;猫哥精心准备了份【抖音运营七步曲】赠送给有需之人,望有所收获!!

    国仁网络资讯-猫哥:不管是操作上、内容上,还是上热门带货变现上,我们专注用心玩短视频的目的,就是为了快速抢占短视频的流量红利,从而完成变现转化。

     

    无论你是商家还是个人,是想热门涨粉、短视频变现、还是直播带货赚钱;有什么不懂的欢迎骚扰。

    展开全文
  • 里面的话不能够很好的检测文件之间的信息流和应用程序之间的进程通信,包括核心系统的设计到敏感信息的传递。 我们使用动态的污点分析来监控智能手机里的敏感隐私信息。敏感信息是首先用来标记污点来源的,一个...
    ]

    1 .摘要

    现今,智能手机操作系统不能有效的提供给用户足够的控制权并且很清楚的了解到第三方的应用程序是如何使用其的隐私数据。我们使用了TaintDroid来阐明这个缺点,其是一个高效的,全系统动态污点跟踪和分析系统可以同时跟踪对个敏感数据来源。TaintDroid利用了Android虚拟机的执行环境提供了一个实时的分析。TaintDroid仅需消耗绑定的CPU为基准14%的性能开销对于第三方的应用程序的开销完全可以忽略不计。通过使用TaintDroid监控了Android第三方比较流行的30款软件的行为,我们发现在其中的20款软件中就有68个例子是误用用户隐私信息的。使用TaintDroid监控敏感信息有助于手机用户在使用第三方应用时获得很多的信息对于智能手机有价值的输入对于安全公司也可以有效的寻找出有恶意行为的软件。

    1.介绍

    现代智能手机平台的一个主要特征就是一个集中式的服务下载多数来自第三方应用市场。这样的一个“App stores”不仅方便了用户和开发者,而且已经让手机设备更加的有趣以及有用,因此使得智能手机平台有了一个爆发式的增长。苹果的APP Store仅仅18个月就提供了将近3亿的应用程序。大多数的这些应用程序混合数据时来自本地的传感器像GPS接收器,照相机,摄像头和加速器然后上传到云端。应用程序通常都具有合法的原因来获取用户的隐私数据,但是用户往往希望自己的数据是被正确使用的。程序的开发者中继利用了上传到云端的数据并且这些隐私数据是通过看似无辜的传感器产生的比如说加速计。

    解决这种用户体验乐趣和使用第三方的应用软件而带来的隐私冲突在智能手机平台是一个极大的挑战。目前,手机的操作系统提供的仅仅是一个粗粒度的控制访问信息是否一个应用程序可以访问用户的隐私信息,但是没有提供隐私数据是怎样被使用的。例如,如果用户允许应用程序获取到她的地理位置信息,但是她无法得知是否这个应用程序将会送她的应用程序到地理位置服务系统,广告商,应用开发者或者是其他的应用实体。作为这个结果,用户盲目的相信了应用程序将会正确的使用他们的隐私数据。

    这篇文章讲了TaintDroid,是针对Android手机平台的一个扩展,通过第三方的应用程序用于跟踪敏感数据流。TaintDroid假设下载的第三方运用程序是不被信任的,通过实时的检测这些应用程序是怎样获取和控制用户的隐私数据的。我们的首要目标是检测当敏感数据通过不信任程序离开我们的系统时通过手机用户或者是外部安全服务来促进对应用程序的分析。

    分析应用程序行为要求有足够的上下文信息关于数据将要离开一个设备以及数据将会被送往哪里。因此,TaintDroid自动标记数据的来源从隐私敏感来源以及物地应用标签作为敏感数据传播通过程序的变量,文件,进程间的消息。当污点数据通过网络传播或者是其他的途径离开了系统,TaintDroid将会对这个数据进行标签,应用程序负责传送数据和数据的目的地。这样的实时反馈给用户还有安全服务商更深入的了解到移动的运用程序在做什么,有可能识别出行为不端的应用程序。

    对于实用性来说,TaintDroid的性能开销必须要最小。相比于现在的重量级的全系统仿真,我们利用了Android的虚拟化架构整合了四个粒度级的污点传播:变量级,方法级,信息级和文件级。尽管现有的技术都不是新的,我们的贡献在于合并了这些技术并且找到了一个由于智能手机对资源约束在性能和精度之间的平衡点。实验表明我们的原型系统显示跟踪而引起的CPU的运行时候的开销通过微基准测试还不到14%。更为重要的就是,被检测的第三方软件可以被监控并且产生很少的感知延迟。

    为了评估TaintDroid的准确性,我们使用了30款随机选取的运用程序,这些流行的Android运用程序会涉及到使用定位用户的地理位置信息,使用摄像头,录音数据等等。TaintDroid正确的标记了这些应用程序中的105例这样的应用程序传输污染路径;在这105例中我们检测到其中的37例是合法的。TaintDroid同样显示了在这30款软件中的15例提供了用户的地理位置信息给远程的广告服务商。其中的7款软件收集了手机的相关信息的ID,例如手机的号码和SIM卡号。总的来说,在我们研究的三分之二的应用程序中都有涉及到使用敏感数据的可以行为。我们的发现揭示了TaintDroid能够帮助解决可能存在威胁的第三方应用程序的敏感行为。

    类似于信息流跟踪系统,TaintDroid的一个基本限制可以通过隐式流绕过泄露。通过隐式流避免了污点检测,就这种行为而言,就可以作为恶意软件的一项指标,并且可以通过其他的技术例如自动化的静态代码分析,这一技术我们将在第8章中讨论。

    剩余文章的组织如下:第二部分提供更高层次的对TaintDroid的介绍,第三部分会对Android平台的背景做一个介绍,第四部分将会介绍TaintDroid的设计,第五部分描述了TaintDroid对污染源的追踪,第六部分描述了对Android应用程序的研究,第7部分描述了我们原型系统的性能特征,第八部分描述了我们方法的局限性,第9部分介绍了相关工作,第十部分进行相关的总结。

    2. 方法概述

    我们试图寻找一个框架允许用户监控第三方智能手机应用程序让他们实时处理他们的隐私数据。许多的智能手机都是闭源的,因此,静态代码分析是不可能的。即使源代码是可用的,运行时事件和配置常常规定了信息使用;实时监控在特殊的环境了占了很重要的比重。

    对于网络的监控披露隐私敏感信息存在以下几个挑战:

    l  智能手机的资源是受限的。由于资源的限制阻碍了像Panorama这样重量级信息跟踪系统。

    l  第三方应用程序委托了几种类型的隐私数据信息。这个监控系统必须区分各种各样的信息,这就产生了额外的计算和存储。

    l  基于上下文的敏感信息是动态的,难以识别甚至是当发送的时候才会清晰。例如,地理位置是一系列的浮点数可以很频繁的改变并且很难预测。

    l  应用程序可以分享信息。如果将监控系统限制在单独的APP里面的话不能够很好的检测文件之间的信息流和应用程序之间的进程通信,包括核心系统的设计到敏感信息的传递。

    我们使用动态的污点分析来监控智能手机里的敏感隐私信息。敏感信息是首先用来标记污点来源的,一个污点标示指示信息是被分配好的。动态污点分析标记数据标签是怎样影响其他数据的可能方式是原始的敏感信息泄露。这种追踪方式常常是在指令执行水平上的。最后,受影响的数据将会被标示在他离开系统之前存放到污点池(常常是网络接口)中。

    存在的污点跟踪方法通常有几个限制。首先也是最重要的,方法依靠指令级的动态污点分析来做整个系统的仿真将会产生很高的性能消耗。指令级的检测将会是产生2-20倍的性能消耗,除此之外也会招致仿真的性能消耗,因此指令级的动态分析并不适合实时的动态分析。第二,发展中的精确污点传播逻辑已经证明对于X86的指令级是一个很大的挑战。指令级的污点检测可能导致污点爆发如果出现堆栈指针错误或者是污点丢失例如像CMPXCHGREF MOV这样复杂的指令。然而大多数的智能手机都是使用ARM指令集,类似很多假阳性和假阴极的现象都可能出现。

    表一呈现出了我们污点跟踪智能手机的方法。我们利用智能手机的体系架构来提升架构(e.g.,安卓,黑莓,J2ME架构的手机),系统范围的污染使用语义明确细粒度跟踪标签。

     

    首先,我们执行VM解释器来提供各种等级的跟踪用以跟踪可疑的程序代码。使用各种语义是通过解释器提供的值得上下文来避免污点爆发在X86的指令级中。除此之外,通过追踪的变化,我们只是跟踪数据而并不跟踪代码。第二,我们在应用程序之间使用了信息级别的跟踪。跟踪消息之间的污点而不是数据在进程间通信的信息最小化开销以此来扩大分析的系统宽度。第三,对于系统提供的原生态库,我们使用了方法级别的跟踪。在这里,我们运行代码而不做测试,并且修复了污点追踪传播的返回值。这些方法伴随着系统和一直心系流动的语义。最后,我们使用了文件级别的跟踪以确保信息的持久性保留了污点标记。

    我们充分利用应用程序定义好的接口来访问敏感数据,以此来分配标签。例如,所有的信息来自于GPS硬件的都是位置敏感信息,并且所有信息来自联系人数据库是涉及联系人的敏感信息。这避免了对标签的依赖试探或者手册规范。对于扩展的信息我们将在第5部分详述。

    为了实现跟踪的多粒度,我们的方法依赖于固件的完整性。这个污点跟踪的可信计算基于包括虚拟机在内的执行用户空间和任何不可信的解释应用程序加载的系统库。然而,这部分代码是固件的一部分,因此是可信的。应用程序仅仅可以逃避虚拟机执行的原生代码。在我们的目标平台(Android),我们修改了本地库加载程序确保应用程序不仅可以只从固件加载本地库而不是从应用程序下载。值得注意的是,在2010年初对Android Market市场上的每一个类别前50的最流行的免费发行的应用程序都揭示出这些程序少于4%包含a.so文件。一份类似的调查报告在2010年中期揭示出这个部分增长到了5%,这个增长预示着使用第三方库的增长,但是这个数量对应用程序的影响还是很小的。

    总的来说,我们提供了一个新颖的,高效的,款系统的,多标记的根据不同的信息进行多粒度结合的污点跟踪系统。虽然对于一些技术像通过解释器进行变量跟踪在之前曾经被提出过(看第九章),据我们所知,我们的方法是第一个扩充像系统级跟踪的,通过选择多粒度的方法,我们平衡了性能和精度之间的问题。此部分我们将在第6和第7节中提及,我们的系统方法即高效(对于同时跟踪每个数据单元的32个污点只占了14%的系统开销和4.4%的内存开销)

    3. 背景:Android

    Android是一个基于Linux的开源的,移动手机平台。最核心的手机功能被执行作为一个应用程序运行在顶层自己定制的中间键上。中间件本身使用的是JavaC/C++代码。运用程序是用Java实现的并且被编译成一个自定义的字节码被命名为Dalvik可执行文件(DEX)的格式。每一个的可执行程序都是一个Dalvik虚拟机实例。每一个实例作为一个唯一的UNIX用户身份在Linux平台子系统上每个应用程序是隔离的互不干扰的。应用程序之间的通信通过Binder IPC机制。Binder通过一个基于包交换的信息处理系统。我们现在讨论一些必要的话题来是我们更好的理解我们的系统。

    Dalvik 虚拟机解释器:Dex文件是一种基于寄存器的机器语言,和Java的字节码不同,其是基于栈的。对于每一个DEX方法都有它自己预定义的一定数量的虚拟寄存器(由于经常使用所以我们简单称为“寄存器”)。Dalvik虚拟机的解释器管理方法寄存器使用一个内部的可执行栈。当前的方法寄存器总是在顶部的堆栈框架。这些寄存器对应着Java方法的局部变量和原始的存储类型以及对象的引用。所有的这些计算都发生在寄存器中,因此在使用前和使用后类的字段都必须要加载和存储。值得注意的是DEX使用的类的字段必须是长时间存储的,不像硬件基于寄存器的语言(e.g.,X86)存储值的时候是随机的。

    Native 方法:Android的中间件提供了访问到本地性能优化和第三方库像OpenGLWebKitAndroid同样使用了Apache Harmony Java架构,使其可以频繁的使用系统库(e.g.math routines)。Native层的方法是用C/C++写的暴露出功能是基于Linux内核和服务的。他们同样提供了可以访问Java内部的接口,因此它是被包含在我们的可信计算部分。

                                   2 TaintDroid的体系结构

     

             Android包含了两种类型的原生方法:内部虚拟机方法和JNI方法。内部虚拟机方法用于访问内部特殊的结构和APIsJNI方法符合Java本地接口标准规范,这要求Dalvik对单独的java参数传进的变量使用JNI调用桥。相反的,内部的VM方法必须手动的解析从解释出的字节码数组参数。内部虚拟机的方法必须手动解析参数从解释器传来的字节数组的参数。

          Binder IPC:所有的Android IPC都需要使用Binder 机制来进行通信。Binder是一个基于组件的进程并且IPC框架设计是为了BeOS,Palm Inc 进行扩展,Google为Android量身定制的。Binder的基础是基于包的,是活跃并且标准数据的序列化,允许应用程序框架层在进程之间管理分享对象。Binder 的内核模块在进程之间传递包的信息。

    4  TaintDroid

    TaintDroid是一个多粒度Android的污点跟踪方法。TaintDroid使用变量级的跟踪VM解释器。多个污点标记被存储为一个污点标签。当应用程序执行本地方法的时候,各种的污点标记被作为返回值返回。最后,最后污点标记被分配给包通过Binder机制进行传播。注意在技术报告中对于这部分执行细节有更详细的解释。

     2描述了TaintDroid的系统架构。信息被标记为可信任的应用程序当有充足的上下文时。污点接口调用了本地的方法和Dalvik虚拟机进行交互,存储精确的污点标记在虚拟的污点集中。Dalvik VM传播污点标签根据数据流规则作为可信任的应用程序使用污点信息。每一个的解释器实例同时传播污点标记。当可信任的APP使用污点信息在IPC中进行传播,修改后的Binder库确保了包裹有污点标记反射出合并后的污点标记包含了所有的数据。包裹传输完全通过内核并且被远程的不可信任程序接受。注意仅有解释代码是不可信的。修改后的Binder库检索来自包的污点标记并将它分配给所有的值从其中读取。Dalvik VM实例的远程传播将完全相同的污点标记为不可信应用程序。当不可信任的应用程序调用调用一个特定的程序作为一个污点池。e.g.网络发送数据,库来检索污点标记数据问题并且报告事件。

    执行这个架构需要解决几个系统的挑战:

    a)      污点的存储

    b)      解释代码污点传播

    c)      原生代码污点传播

    d)     IPC污点传播

    e)      二级存储污染

    剩余的部分将会描述我们的设计。

    4.1     污点标记存储

    对于怎样选择存储标记直接影响了执行和存储的效率。动态污点跟踪系统通常存储每个字节或标签。跟踪内存是结构化的,没有内容的语义。常用的污点标记被存储在不相邻的单元和标记地图上。TaintDroid使用了解释器里的语义变量。我们存储相邻的污点标记在内存当中,提供空间位置。

    Dalvik有五种类型的变量要求存储:局部方法变量,方法的参数,类的静态变量,类实例的字段值和数组。在所有的情况下,我们存储了一个32位的位向量对于每一个污点标记每个变量进行编码,允许存储32种不同的污点标记。

    Dalvik存储方法的本地变量值还有参数在内部栈。当应用程序调用一个方法的时候,一个新的堆栈帧分配给所有的局部变量。方法参数的传递也通过内部栈。在调用方法之前,被调用的函数的参数的地方在堆栈的顶部,这样它们成为了高编号被登记在被调用的函数的堆栈帧。我们给污点存储分配增加一倍大小的存储空间。污点标签值之间的交叉例如寄存器Vi最初访问的变量是fp[i]当被修改之后访问的是fp[2·i]。注意Dalvik存储一个64位的变量是通过两个相邻的32位内部寄存器完成的。然而字节码解释这些相邻的寄存器作为一个单独的64位的值,解释器管理这些寄存器作为单独的值。因此,我们对栈的修改是透明的并且检索64位的值对于分开的寄存器。最后,本机方法的目标要求一个稍微不同的堆栈框架便是基于以上原因。

    3修改后的栈的格式

    污点标记是交错在寄存器之间的来解释方法目标和附加的本地方法。深灰色的盒子代表的是污点标记。

    详细的讨论在4.3节。修改的栈格式如图 3所示。

    污点标记存储在相邻的类字段和数组在VM解释器的内部的数据结构。为了使存储开销最小化TaintDroid存储的仅仅是每个数组的一个污点标签。对于Java字符串对象来说每个污染值的存储是极其低效的。作为所有的特征都有相同的标签。不幸的是,对于每个数组只存储一个污点标签可能导致假阳性污染传播。例如,如果一个没有被标记污点的值u存储的数组A下标索引为0A[0])的位置并且污点变量t存储在A[1],此时数组A是被标记为污染的。之后,如果变量v被分配给A[0],v将会被标记,即使u是未被标记的。不幸的是,Java频繁的使用对象,并且对象之间的引用是被频繁的标记的(见4.2节),因此编码实践将会呈现出更少的假阳性。

    4.2     解释代码污染传播

    污点跟踪的粒度和流的语义直接影响了性能和准确性。TaintDroid执行变量级的污点跟踪使用了Dalvik VM解释器。变量提供有价值的语义污点传播,从标量值区分数据指针。TaintDroid最原始的跟踪是基本类型变量(e.g.intfloatetc;但是,在一些情况下对象的引用必须成为受污染的以确保污点传播的正确性;这一节描述了为什么这些例子是存在的。但是,首先我们呈现出污点跟踪在Dalvik机器语言是作为正常的逻辑。

    4.2.1   污点传播逻辑

    Dalvik VM运行唯一的DEX机器语言指令集,因此我们必须设计一个合适的传播逻辑。我们使用了数据流逻辑,作为跟踪隐式流要求的静态分析和引起显著的

    性能开销和高估的跟踪(见第8节)。我们开始定义了污点标记,污点标签,变量以及污点传播。我们呈现了我们对于DEX的逻辑。

    设集合L是对一个特定集合的一般情况下的污点标记。一个污点标记是这个集合中的一个元素,t L。每一个变量都有一个相关联的污点标记。一个变量是在4.1节中描述的5个类型中的一种。对于每一种类型我们采用了不同的表示。局部变量和参数变量我们对应于相应的虚拟寄存器,使用VX 。类的字段变量我们使用fx来表示用X来表示类的下标。字段的实例要有一个对象的实例来指示被标记为Vy(fx),其中Vy是实例对象的引用(包括对象的直接引用和间接引用),静态字段也是用fx来标记,速记为S(fx),其中S()表示的是静态的取值范围。最终,Vx[·]代表的是一个数组,Vx代表的是数组变量的引用。

    我们的污点函数集使用的是τ(·)。τ(v)返回的是污点标记变量。检索和复制是不同我们使用符号来区分。当τ(v)出现在的右边表示的是检索污点标记的变量值v。当τ(v)出现在的左边表示的对变量值v赋值。例如,τ(v1)← τ (v2)将污点标记V2的值赋给V1

     1展示的是我们传播逻辑。该表列举了抽象的DEX字节码指令的详细说明。寄存器变量和类的字段分别使用Vxfx代替。R表示的返回E表示的是异常。大写的ABC代表的是不变的字节码。表中没有列出清除污点寄存器的目的寄存器。

                                                                                                 1TaintDroid的传播逻辑

    例如我们不考虑指令数组的长度对于返回一个污点值即使这个数组是受污染的。注意数组的长度有助于直接控制流的传播。

    4.2.2   污点对象引用

    在表 1中的传播规则有两个例外。其一,污点传播逻辑包括污点标记数组的索引中查找处理转换表(e.g. ASCII/UNICODE的大小写转换)。例如,考虑从小写转换到大写字母的情况:如果一个污点值“a”是数组的一个索引,由此导致“A”也是被污点标记的即使“A”在数组中不是。因此,污点逻辑aget-op既使用数组和数组索引污点。第二,当这个数组包含对象索引(e.g.一个证型数组),这个污点索引标记传播的是对象的引用而不是对象的值。因此,我们包含对象引用污点标记在实例中得到了(iget-op)规则。

     4列出的代码展示出了一个实际的实例对象引用污点的必要性。在这里,ValueOf()返回一个整数对象传递int。如果整型参数在-128127之间,ValueOf()返回引用静态定义的整型对象。ValueOf()对象隐式的转换为一个对象。考虑下列方法的定义:

    Object intProxy(int val) { return val; }

    int out = (Integer) intProxy(tVal);

    考虑一下这样一种情况tVal的值是int为1并且是被标记的。当intProxy()传递tVal的时候最后返回的值是val。在这种情之下,Integer.valueOf()获得一个整数实例对应val标量的变量。在这种情况下,Integer.valueOf()返回一个引用静态对象其值为1。这个变量字段(整型类)对应的对象标记为∅;然而,因为aget-op传播规则包括污点的索引寄存器,这个对象的索引有一个污点标记。因此,仅仅只包含对象的污点标记当字段读取来自整型,正确的污点标记将会被赋值。

     

    4摘自Android整数类说明需要对象引用的污点传播


    4.3   原生代码标记传播

    Native 代码是不受TaintDroid监控的。理想情况下,我们获得了相同的传播语义当使用相同的解释副本时。因此,为了精确的在Java层进行污点监控,我们定义了两个必要的前提条件:1)所有被访问的外部变量(对于其他方法的类字段引用)根据数据流都被标记上了相应的污点。2)根据成数据流所有返回值都被分配了一个污点标记。TaintDroid完成这些的前提条件是通过各种人工方式,推断,方法概要,取决于环境要求。

    内部虚拟机方法:内部虚拟机的方法又叫做直接译码法,传递一个指向32位数组的寄存器参数和一个指向返回值的指针。对于java参数和返回值堆栈指针增加提供了如图 4所示的访问污点标记。在不同的版本之间虚拟机内部方法有一个相对很小的数字在频繁的增加,在污点传播需要的时候我们将会进行手动检测和修补。我们鉴定了185个内部虚拟机方法在Android的2.1版本;但是,只有5个要求打补丁的:数组复制的本地方法System.arraycopy()。执行Java反射的几个本地方法。

    JNI 方法:调用JNI方法通过JNI调用桥。调用桥解析Java参数并且使用方法的描述符字符串给返回值赋值。为了提供污点传播我们对所有的JNI方法都进行了修补。当JNI方法返回时,TaintDroid调用方法概要标签对污点传播进行更新。一个方法配置文件是一个列表(from,to)指示流动的变量,这些变量可能是方法参数,类变量或返回值。枚举出所有的JNI方法的信息里是一个耗时的过程,最好的方法就是使用源代码完成自动化分析(这个也是我们今后要做的工作)。我们目前包括了一个额外的传播启发式补丁。启发式算法是一个JNI方法中一个保守的方法只操作原语和字符串和返回值。他分配了方法参数污点标记标签到污点的返回值的集合。对于调用方法的对象启发式的算法有假阴性,它涵盖了许多存在的方法。

    我们对官方Android版本(2.1)的源码中包含的JNI方法进行了一个调查来确定特定的属性。我们发现了2844个JNI方法与Java接口和C或者C++的实现。在这些方法中,913个方法没有对象的引用(作为参数,返回值,或者方法)因此自动被我们的启发式算法所覆盖。剩下的方法可能有或者可能没有信息流而产生假阴性。目前,我们按需要定义了方法概要。例如,在IBM Native Converter 类中的方法在字符类型和字节类型数组之间要求传播的转换。

    4.4    IPC 污点传播

    当APP之间在交换数据时污点标记必须传播。跟踪的粒度直接影响了性能和内存开销。TaintDroid使用信息级的污染跟踪。一个信息的污染标签代表了信息上一次污点标记分配给的变量。我们使用了信息水平级的粒度使得在进程间通讯的性能和存储开销达到最小化。

    我们选择在变量水平实现消息级别的污点传播,因为在一个变量级系统,一个狡猾的接收器可能通过为打包的变量在不同方式的方式下获取没有污点传播的变量而戏弄监控。例如,如果一个IPC包裹的信息包含一系列的标量值,这个接收器可以解包一个字符串,从而获得没有污染传播标签的值在标量值的序列里。因此,为了阻止应用程序可以使用这种来移除污点标记,目前执行污点保护都是在信息层级。

    对于IPC之间的污点传播会导致假阳性。类似与数组,所有的数据项为一组分享同一个污点标记。例如,第8部分讨论了跟踪IMSI的限制以免部分配置的参数之在同一个包里。未来将会考虑word级的污点标记以及额外的一致性检查确保解包变量的准确传播。然而这种额外的复杂性将会对IPC性能产生负面的影响。

    4.5   二级存储污点传播

    当数据被写入文件的时候可能会导致污点的丢失。我们设计了存储每个文件的污点标记。这个污点标记将会被更新当写文件或者在读取文件的时候传播数据。TaintDroid存储文件污染标签在文件系统的扩展属性里。为了达到这个目的,我们执行了支持Android的热文件系统扩展属性(YAFFS2)并且格式化了可移除的SD卡与ext2文件系统。至于数组和IPC,存储每个文件的污点标记将会导致假阳性并且限制了信息数据库污点标记的粒度(见第5节)。或者,我们可以跟踪污点标记在更细的粒度通过牺牲更多的内存和性能开销。

    4.6       污点性能库

    污点源和污染池定义的虚拟化环境污染标签必须进行污点交互。我们抽象出污染源和污染池逻辑组成一个单独的污点接口库。这个接口执行两个功能:1)增加对变量的污点标记;2)从变量检索污点标记。这个库只能提供添加未设置或者清除污染标签的功能,这些功能将会被用来对于可以的Java code 移除污点标记。

    增加污点标记数组和字符串通过内部虚拟机方式很简单,所有的这些都存储在数据对象当中。对于基本的数据类型,一方面,是存储在解释器的内部栈当方法调用结束之后会被销毁。因此,污点库使用该方法的返回值作为一种污染原始变量的手段。开发人员通过一个值或者变量添加进合适的污点方法中(e.g., addTaintInt())返回的变量值有相同的值只是增加了指定的污点标记。注意栈存储在污点标记检索时不会产生并发。


    5 Privacy Hook Placement(暂未找到)



    6 应用程序研究

       这部分的报告是应用程序的研究,通过使用TaintDroid来分析30款流行的应用程序是怎么使用用户敏感数据的。选取的应用程序可以根据相应的权限通过Internet获得各种各样的用户数据。我们研究发现三分之二的这些数据暴露了用户详细的地理位置信息,唯一的电话标示,以及电话号码通过在安装的时候授予一些看似没有危险的访问权限。这个发现证实了TaintDroid可以用来监控运行时的用户的隐私敏感数据以及能过准确的监控相关的应用程序的数据暴露。

    6.1  实验装置

           在2010年初的一项调查是关于在Android Market上的每个类别最受欢迎的50款免费的应用程序(总数是1100个)揭示了大约三分之一的应用程序(358/1100)通过联网获取了地理位置,照相机,以及音频数据。从这些软件当中我们随机的挑选了30款最受欢迎的应用程序(占样本总数的8.4%)覆盖了12个类别。表 2列举了这些应用程序在安装是要求的权限。注意这些并不能反映出进入并且使用敏感数据。

          我们研究了者三十个下载的应用程序通过启动应用程序,执行任何初始化的操作,注册这些都是必要的,然后手动的执行这些功能。我们记录下系统日志通过来自TraintDroid信息:被标记的binder信息,被标记的文件输出,被标记的网络信息以及远程的网络地址。整个实验(在2010年的5月)持续略超过100分钟,生成了22,594个包(8.6MB)并且1,130个TCP链接。为了验证我们的结果,我们同样还记录了网络流量通过使用tcpdunmp在WiFi上的接口并且反复实验在多个Nexus >TaintDroid建立在Android 2.1上。尽管用于实验的手机有一个有效的SIM卡,但是这个SIM卡被阻止活动了,迫使所有的数据包传输都通过无线的接口。包跟踪只是用于验证通过TaintDroid标记的接触的受污染的数据。

    粗了网络连接跟踪,我们还指出是否应用程序获得用户的同意(显示或者隐式)出口的敏感信息。这个通过额外的上下文信息来识别可能的隐私违规行为。例如,通过选择“使用我的地理位置”在天气应用程序中,用户是默认同意披露地理坐标给天气服务器的。

    TaintDroid:智能手机监控实时隐私信息流跟踪系统(四)

    表2应用程序组要求的权限(L:laocation,C:camera,A:audio,P:phone state).Android Market 市场类别显示在括号,显示出了应用程序的多样性。

    注意:列出的名字是对应在手机上安装的名字并不是列在Android Market市场上的。所有列出的应用程序都要求可以访问Internet。

    6.2 调查结果

    TaintDroid:智能手机监控实时隐私信息流跟踪系统(四)

     表 3总结了我们的发现结果。TaintDroid标记了105个TCP的连接包含隐私敏感数据的污染信息。我们手动标记了每个信息根据可用的上下文,包括远程的服务器名称和时间相关应用程序日志消息。我们使用了远程主机名作为说明数据被发送到服务器提供的应用程序功能或者是第三方来使用。通常情况下,信息包含明文,复制类别,e.g.,一个HTTP GET请求包含地理位置坐标。但是,21个被标记的信息包含了二进制的数据。我们的调查显示出这些信息是由手机的Google地图以及FluryAgent的APIs和包含了污染的隐私敏感数据。这些结论的支撑是通过当APP收到了一个污点包裹通过系统的地理位置管理器之后消息会立即的传播开来。我们现在扩展了我们的研究结果为扩大每个类别并且反应潜在的隐私侵犯。

    表3研究的应用程序中有20个存在潜在的隐私侵犯。注意三个应用程序有多个违规行为,其中一个有范围了者三个类别中的。

    注意 TaintDroid标记了这一类的9列应用,但只有7个院士传播IMEI没有提及这种实践的EULA。据我们所知,二进制消息包含了受污染的位置数据。

    电话信息:表 2展示出了在30个应用程序中的21个申请了读电话状态以及联网的权限。我们发现21个中的2个应用程序传送给他们的服务器(1)手机的电话号码,(2)IMSI号它是一个15位的数据编码用于标示个人用户在GSM网络的功能,(3)ICC-ID数字是一个唯一的SIM卡的序列号。我们验证消息是正确的标记通过检查明文的有效负载。在任何一种情况下都可以告知用户这个信息传播了电话信息。

    这个发现展示出了Android的coarsegrained访问控制提供了足够的保护对第三方应用程序试图收集敏感数据。此外,我们发现了一个应用程序在每次手机重启的时候都会传送电话信息。虽然这个应用程序显示出条款是第一次使用,使用条款中并没有指定集合的高度敏感数据。令人惊讶的是,这个应用程序传递手机数据在安装之后,第一次使用之前。

    设备唯一ID:设备的IMEI同样被应用程序所暴露。IMEI号用于唯一标识一部手机并且用于阻止被盗手机用于访问移动网络。TaintDroid标记展示出了有9款应用在传播IMEI号。在这9款中的7款要么不呈现最终用户许可协议(EULA)或不指定收集的EULA。其中的7款应用程序是一个流行的社交网络应用程序或者是一些基于地理位置信息服务的应用程序。此外,我们发现7个当中的2个应用程序包含了IMEI当设备传输地理坐标到他们的内容服务器,潜在的利用了IMEI作为客户机的ID。

    相比之下,这9个当中的2个应用程序处理IMEI更加的谨慎,因此我们不把他们归纳在属于潜在隐私侵犯这一类。一个应用程序展示出了一个隐私声明表示出了应用程序收集的设备ID。其他的使用hash后的IMEI代替了这个数字本身。我们确认这个事实通过比较来自两个电话不同的结果。

    来自广告服务器的位置数据:一半的研究应用程序展示出了暴露位置数据给第三方的广告服务器而没有任何隐式或者是显示的让用户知晓。在这其中的15个应用程序,仅仅只有两个展示出了EULA在第一次运行的时候;并且EULA也展示出了这种做法。展示出的位置信息同样是明文的二进制形式。暴露出的地理位置信息也是明文和二进制的信息。后者强调了TaintDroid的优势,简单的基于模式的包扫描信息。应用程序发送地理位置数据的明文给了admob.com,ad.qwapi.com,ads.mobclix.com(11个应用程序)使用二进制程序到FlurryAgent(4个应用程序)。纯文本的位置暴露在AdMob发生在HTTP Get的字符串:

    ...&s=a14a4a93f1e4c68&..&t=062A1CB1D476DE85B717D9195A6722A9&d%5Bcoord%5D=47.661227890000006%2C-122.31589477&...

    调查在AdMob的SDK展示了s=参数,是一个表示独特应用出版商,并且coord=参数提供了地理位置坐标。

    对于FlurryAgent,我们证实了位置信息暴露通过以下的一些事件。首先,一个命名为“FlurryAgent”组件注册了位置管理器来接收位置的更新。然后,TaintDroid打印出信息展示出应用程序接收污点包裹来自地理位置管理器。最后,应用程序报导“发送报告到http://data.flurry.com/aar.do”当接收到污点包裹的时候。

    我们的实验表明了15款应用程序收集地理位置数据然后传送给广告商。在这些案列当中,地理数据传输广告服务器即使没有广告展示在应用程序中的。

    未完成部分

    以下多为性能分析类,没找到翻译结果,具体参照原文:http://appanalysis.org/tdroid10.pdf
    7 Performance Evaluation
    7.1 Macrobenchmarks
    7.2 Java Macrobenchmark
    7.3 IPC Macrobenchmark
    8 Discussion
    9 Related Work
    10 Conclusions
    参考资料


    展开全文
  • 传统上工作流软件是企业级的业务流程管理工具,但现在随着网络互联程度的加深,工作流软件开始呈现出其作为互联网技术的一面。 诚然,社会化媒体业通过将人连接到一起而主导了 Web 2.0,但社交网络现在也已经
  • 近年来爱奇艺快速发展,优质内容层出不穷,爱奇艺广告也随之发展和壮大,广告在线服务同时服务于品牌、中小、DSP 等不同客户,形成了可以满足不同需求类型的较为完善的商业广告变现布局,广告库存涵盖视频、信息流、...
  • 问:软件测试的原则? 答:https://blog.csdn.net/weixin_30363263/article/details/102986878 问:你在测试中发现了一个 bug ,但是开发经理认为这不是一个 bug ,你应该怎样解决。 1、将问题提交到缺陷...
  • Android 应用广告接入- 穿山甲

    千次阅读 2019-09-03 20:33:14
    Android 应用广告接入- 穿山甲 参考 SDK接入流程 头条网盟Android SDK——接入说明文档(记得申请账号登录)
  • 什么是 AdGuard HomeAdGuard Home 是一款全网广告拦截与反跟踪软件,AdGuard Home 项目是著名广告拦截器提供商 AdGuard 开源的一个...
  • 媒体CDN解决方案

    千次阅读 2010-03-20 18:46:00
    创智数码科技股份有限公司一直专注于媒体领域的增值业务应用软件开发,致力于为媒体服务运营商提供一流的、专业的视频应用软件媒体整体解决方案。 以多年的媒体服务软件开发经验为背景,总结了多次省级...
  • Android软件安全开发实践

    千次阅读 2014-09-26 10:16:53
    Android开发是当前最火的话题之一,但很少有人讨论这个领域的...过去两年,研究人员已发现Android上的流行软件普遍存在安全缺陷或安全漏洞。漏洞频发的原因可能有很多,例如以下几种。 与一切都是集中管理的i
  • 什么是SDK广告

    千次阅读 2021-03-12 09:53:13
    付米聚合,创立于2015年,建有国内响应速度快、容量高、技术先进的移动广告网络交易中心与大数据计算平台,全面支持优化开屏、横幅、插屏、原生、视频等各种主流的移动广告形式,拥有国内覆盖用户多、数据精细的移动...
  • 媒体及媒体传输协议简介

    千次阅读 多人点赞 2019-06-01 22:26:10
    媒体(streaming media):是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术与过程,此技术使得数据包得以像流水一样发送;如果不使用此技术,就必须在使用前下载整个...
  • Unity3D使用腾讯广点通广告

    千次阅读 2015-07-18 19:49:21
    App想在国内赚钱,“软件收费”是基本上做不起来的,大家都懂,没什么好说的。那么比较流行的是应用内加广告或者应用内计费。"应用加广告",很好理解,就是在应用内加上广告,那么广告从哪获取呢?实际上是需要与...
  • 软件测试笔试面试题目完全汇总

    万次阅读 多人点赞 2019-03-06 13:29:37
    1、软件测试的流程 2、web测试和APP测试的区别 仅仅从功能测试的层面上来讲的话,在流程和功能测试上是没有区别的。那么区别在哪里呢? 由于载体不一样,所以系统测试和一些细节可能会不一样。 那么我们就要先...
  • 媒体

    千次阅读 2007-03-19 18:45:00
    一、前言 随着越来越多的朋友开始选择ADSL、Cable Modem或FTTB+ LAN作为首要的上网方式,宽频时代即将到来,这使我们“宽频 KTV、影音聊天室、线上电影院、远程教育”的梦想即将成为现实, 而与其密切相关的“媒体...
  • 作为专业人士(学生也算,烟酒僧,播士更不在话下),仅仅迷醉于用用vissim,看看3d仿真后的效果,是不行的,五无意批评某一款软件,但商业软件可用于微观交通建模的功能几乎没有(我是说,让你自己建立驾驶员模型
  • 埃森哲互动并购了56家广告公司

    千次阅读 2019-05-09 10:54:15
    有几个事:1、IT服务公司进入广告业:埃森哲互动在2017年营收达到65亿美金,成为全球第五大广告集团2、互联网公司进入广告业:阿里巴巴和腾讯,去年花了25亿美金,从世界...
  • 广告是营收的一大模式,微信信息流广告恐怕即将来临。 即使张小龙一再对外表示“微信不是一个营销平台”,但仍然无法改变腾讯或者马化腾赋予微信的使命,“无论微信是一个什么平台,但它一定是一个可以赚钱的...
  • 作为专业人士(学生也算,烟酒僧,播士更不在话下),仅仅迷醉于用用vissim,看看3d仿真后的效果,是不行的,五无意批评某一款软件,但商业软件可用于微观交通建模的功能几乎没有(我是说,让你自己建立驾驶员模型,...
  • 软件工程专业就业方向职业规划

    千次阅读 多人点赞 2015-03-13 17:39:07
    首先说明,我的回答是基于你是软件学院的学生这个前提来说的。  你的三个方向里,如果要做到一定层次,其实嵌入式是最简单的,网络是最难的,WEB居中。  不过问题在于,如果在一个基本面上讨论,则WEB是最简单的...
  • 谈谈软件学院高年级同学的学习方向(by JacksonWan)一、关于企业计算方向企业计算(Enterprise Computing)是稍时髦较好听的名词,主要是指企业信息系统,如ERP软件(企业资源规划)、CRM软件(客户关系管理)、SCM...
  • 如何打造千万级Feed系统

    千次阅读 2017-11-15 11:55:48
    摘要: Feed流是一个目前非常常见的功能,在众多产品中都有展现,通过Feed流可以把动态实时的传播给订阅者,是用户获取信息流的一种有效方式。在大数据时代,如何打造一个千万级规模的Feed流系统仍然是一个挑战。 ...
  • 阅读类APP可行的广告变现入口分析

    千次阅读 2018-12-18 17:58:58
    一、 背景 本次分析是根据小米产品实习生招聘的笔试题所做,原题为:列举图书类APP的可行广告变现入口,...主要的广告入口是开屏广告、banner 广告、插屏广告和仿信息流广告。 开屏广告出现地最自然,位置最佳,...
  • 在线广告系统的架构变迁

    千次阅读 2017-09-12 22:38:59
    百度联盟使用第三方广告托管系统百度广告管家部署开源广告系统OpenX自主开发广告系统模块广告投放服务器 K/V内存数据库 关系数据库 消息中间件 CDN RPC框架 流式分布式计算平台 离线分布式计算平台 Overview(未完)...
  • 章一 软件测试的背景

    千次阅读 2007-01-17 00:01:00
    章一 软件测试的背景一、软件失败的术语缺点defect,偏差variance,故障fault,失败failure,问题problem,矛盾inconsistency,错误error,特殊feature,事件incident,缺陷bug,异常anomaly。二、软件缺陷的定义1、...
  • Android广告条效果--使用Volley实现网络图片的自动轮播...现在市面上大多数的APP软件都在使用这种展示广告的效果。闲来无事,我简单翻看了一下自己的手机软件,几乎都使用了这种图片自动轮播的策略来实现展示广告的效果
  • Adblock Plus 是当下最流行的浏览器扩展。...如何过滤广告如何禁止在线跟踪行为如何禁止恶意域名如何禁止社交媒体按钮如何过滤 YouTube 的广告如何过滤 Facebook 的广告 什么是 adblocker(广告过滤器)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 41,708
精华内容 16,683
关键字:

信息流广告软件