解析android的app多开

简介: app的多开

多开理论基础

app多开常用于做一些不合法的事情,如高羊毛,黑灰产,甚至会对app的功能做破坏修改。因此多开在实际app应用中是有一定危害性的,因此对多开环境的识别是很重要的,通过识别多开环境有利于让app更加安全。

多开实现原理解析
app多开实现原理很多种类,如采用多用户方式(mumu模拟器的多开器实现)、通过创建不同进程名称(多开分身、双开助手)进行运行。
我们知道在每一个的app都有属于自己的私有目录,一般是“/data/data/包名/”或“/data/user/用户号/包名”,多开方式也是基于这些去做处理的,那么我们就可以通过调用系统getFilesDir()方法可以读取到私有目录下的信息目录。在多开环境下,获取到目录会变为“/data/data/多开包名/xxxxxxxx”或“/data/user/用户号/多开App的包名”。
基于以上的原理分析,就可以通过以下代码实现对多开环境的判断识别了。

代码实现:多开包名

//用于收集可以实现多开的app包名,已收集到最新市面上的大部分多开app
private String[] packagename = {
        "com.bly.dkplat",//多开分身本身的包名
        "com.by.chaos",//chaos引擎
        "com.lbe.parallel",//平行空间
        "com.excelliance.dualaid",//双开助手
        "com.lody.virtual",//VirtualXposed,VirtualApp
        "com.qihoo.magic",//360分身大师
        "com.dual.dualgenius", //DualGenius/双开精灵
        "com.jiubang.commerce.gomultiple" //GO Multiple/Go双开
};

通过读取文件包的方式进行比对
public  boolean checkPrivateFilePath(Context context)
{
    String path = context.getFilesDir().getPath();
    for(String vtpkg: packagename)
    {
        if(path.contains(vtpkg))
        {
            return true;
        }
    }

    return false;
}

代码实现:多用户

private  String GetMulData()
{
    //通过读取命令行方式实现。
    String filter = exec("cat /proc/self/cgroup");
    if(null == filter || (filter.length() == 0))
    {
        return null;
    }

    int uidStartIndex = filter.lastIndexOf("uid");
    int uidEndIndex = filter.lastIndexOf("/pid");
    if(0 > uidStartIndex)
    {
        return null;
    }
    if( 0 >= uidEndIndex)
    {
        uidEndIndex = filter.length();
    }

    filter = filter.substring(uidStartIndex + 4, uidEndIndex);
    try {
        String strUid = filter.replaceAll("\n", "");
        if(isNumeriToUid(strUid))
        {
            int  uid = Integer.valueOf(strUid);
            filter = String.format("u0_a%d", uid -10000);
            return filter;
        }


    }catch (Exception e)
    {
        return null;
    }
    return  null;
}
相关文章
|
3月前
|
缓存 监控 Android开发
App Trace 快速安装解析(开发者视角)
App Trace 是一款应用性能监控工具,可追踪启动时间、方法耗时及卡顿等指标,助力开发调试与性能优化。支持 Android 和 iOS 平台,提供依赖引入、初始化配置和自动化脚本等快速安装方案,同时包含采样率、本地缓存等高级配置选项。集成后可通过日志检查与测试事件验证功能,注意在发布版本中使用 no-op 版本以减少性能影响,并确保隐私合规。
|
4月前
|
Android开发 数据安全/隐私保护 开发者
Android自定义view之模仿登录界面文本输入框(华为云APP)
本文介绍了一款自定义输入框的实现,包含静态效果、hint值浮动动画及功能扩展。通过组合多个控件完成界面布局,使用TranslateAnimation与AlphaAnimation实现hint文字上下浮动效果,支持密码加密解密显示、去除键盘回车空格输入、光标定位等功能。代码基于Android平台,提供完整源码与attrs配置,方便复用与定制。希望对开发者有所帮助。
|
3月前
|
监控 测试技术 Android开发
App Trace技术解析:传参安装、一键拉起与快速安装
本文从开发者视角解析App Trace技术的关键功能与实现方法,涵盖传参安装、一键拉起和快速安装技术。详细介绍了Android和iOS平台的具体实现代码与配置要点,探讨了参数丢失、跨平台一致性及iOS限制等技术挑战的解决方案,并提供了测试策略、监控指标和性能优化的最佳实践建议,帮助开发者提升用户获取效率与体验。
|
1月前
|
存储 Java PHP
轻量化短视频电商直播带货APP源码全解析:核心功能与设计流程​
在电商直播热潮下,开发专属直播带货APP成为抢占市场关键。本文详解原生开发轻量化APP的核心功能与全流程设计,涵盖用户登录、商品浏览、直播互动、购物车、订单及售后功能,并介绍安卓端Java、苹果端Object-C、后台PHP的技术实现,助力打造高效优质的直播电商平台。
|
2月前
|
存储 Android开发 数据安全/隐私保护
Thanox安卓系统增加工具下载,管理、阻止、限制后台每个APP运行情况
Thanox是一款Android系统管理工具,专注于权限、后台启动及运行管理。支持应用冻结、系统优化、UI自定义和模块管理,基于Xposed框架开发,安全可靠且开源免费,兼容Android 6.0及以上版本。
138 4
|
3月前
|
安全 Java Android开发
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
158 0
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
|
5月前
|
数据采集 JSON 网络安全
移动端数据抓取:Android App的TLS流量解密方案
本文介绍了一种通过TLS流量解密技术抓取知乎App热榜数据的方法。利用Charles Proxy解密HTTPS流量,分析App与服务器通信内容;结合Python Requests库模拟请求,配置特定请求头以绕过反爬机制。同时使用代理IP隐藏真实IP地址,确保抓取稳定。最终成功提取热榜标题、内容简介、链接等信息,为分析热点话题和用户趋势提供数据支持。此方法也可应用于其他Android App的数据采集,但需注意选择可靠的代理服务。
192 11
移动端数据抓取:Android App的TLS流量解密方案
|
6月前
|
XML JavaScript Android开发
【Android】网络技术知识总结之WebView,HttpURLConnection,OKHttp,XML的pull解析方式
本文总结了Android中几种常用的网络技术,包括WebView、HttpURLConnection、OKHttp和XML的Pull解析方式。每种技术都有其独特的特点和适用场景。理解并熟练运用这些技术,可以帮助开发者构建高效、可靠的网络应用程序。通过示例代码和详细解释,本文为开发者提供了实用的参考和指导。
160 15
|
6月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
6月前
|
机器学习/深度学习 安全 算法
布谷交友App源码开发新趋势:精准匹配与多元盈利模式解析
布谷交友App系统软件开发搭建需要紧跟市场趋势,把握用户需求,设计合理的盈利模式,并不断优化产品功能和用户体验,才能在激烈的市场竞争中脱颖而出,实现可持续发展。

推荐镜像

更多
  • DNS