qq549631030 / AndroidJunkCode

Android马甲包生成垃圾代码插件
1.09k stars 252 forks source link

关于上架Google马甲包讨论? #78

Closed XiongKe94 closed 10 months ago

XiongKe94 commented 11 months ago

1.使用包名转换器将项目目录改变,和代码层目录。 2.混淆时候有混淆字典txt文件,不同马甲包使用不同字典混淆出来方法难以辨认. 3.插件将项目资源图片,字符串名称再次重命名. 4.使用Android垃圾代码生成器,动态插入垃圾代码和垃圾图片. 5.将项目图片拷贝出,使用插件更新Hash值,2张图质量一样但不是相同图片。

还有没有其他建议的方法?

18319557579 commented 11 months ago

1.app图标,app名称,app包名,这些常规的修改 2.打包用的的密钥替换 3.drawable和layout这些xml的修改 4.修改依赖的库 5.不混淆的类手动改名称

请问你的第1个工作是怎么做的,有工具推荐吗

longkehuawei commented 11 months ago

新的androidStudio 用最新的AndroidJunkCode版本,为啥AndroidJunkCode这个插件不生效了,代码插入不了,老版本可以

XiongKe94 commented 11 months ago

1.app图标,app名称,app包名,这些常规的修改 2.打包用的的密钥替换 3.drawable和layout这些xml的修改 4.修改依赖的库 5.不混淆的类手动改名称

请问你的第1个工作是怎么做的,有工具推荐吗

我用的 是 classpath "com.github.liujingxing:XmlClassGuard:1.2.5" 这个库 可以一键转换方便

XiongKe94 commented 11 months ago

新的androidStudio 用最新的AndroidJunkCode版本,为啥AndroidJunkCode这个插件不生效了,代码插入不了,老版本可以

你开启debug模式 试试吧,估计是你自己写错了 具体代码开启
屏幕快照 2023-10-27 上午9 51 08

longkehuawei commented 11 months ago

新的androidStudio 用最新的AndroidJunkCode版本,为啥AndroidJunkCode这个插件不生效了,代码插入不了,老版本可以

你开启debug模式 试试吧,估计是你自己写错了 具体代码开启 屏幕快照 2023-10-27 上午9 51 08 我发现我代码中用到了productFlavors 多渠道配置,之前版本有androidJunkCode.configMap.put,新版本不知道怎么弄了

XiongKe94 commented 11 months ago

新的androidStudio 用最新的AndroidJunkCode版本,为啥AndroidJunkCode这个插件不生效了,代码插入不了,老版本可以

你开启debug模式 试试吧,估计是你自己写错了 具体代码开启 屏幕快照 2023-10-27 上午9 51 08 我发现我代码中用到了productFlavors 多渠道配置,之前版本有androidJunkCode.configMap.put,新版本不知道怎么弄了

请上代码?

longkehuawei commented 11 months ago

//多渠道配置 productFlavors {

    neo {//主包app
        applicationId "com.dinerosea333.cash.credito.lana.presto"
        versionName "1.2.2"
        versionCode 14
        buildConfigField "String", "channel", "\"10000\""

    }
    zephla {//马甲包app
        applicationId "com.zephla22.app"
        versionName "1.0.0"
        //马甲包不同的配置 可以在这里设置  我这里设置的是渠道  可以自行配置
        buildConfigField "String", "channel", "\"10001\""
    }

之前版本,我是 applicationVariants.all { variant -> println("runTasks ----variant.name>" + variant.name)

    switch (variant.name) {
        case "neoRelease":
            androidJunkCode.configMap.put(variant.name, {

                packageBase = "com.neo.plugin.ui" //生成 java 类根包名

                packageCount = 30 //生成包数量

                activityCountPerPackage = 3 //每个包下生成 Activity 类数量

                excludeActivityJavaFile = false
                //是否排除生成 Activity 的 Java 文件,默认 false(layout 和写入 AndroidManifest.xml 还会执行),主要用于处理类似神策全埋点编译过慢问题

                otherCountPerPackage = 50 //每个包下生成其它类的数量

                methodCountPerClass = 20 //每个类下生成方法数量

                resPrefix = "junk_" //生成的 layout、drawable、string 等资源名前缀

                drawableCount = 300 //生成 drawable 资源数量

                stringCount = 300 //生成 string 数量

            })
            break ,这样弄的

新版本就没有configMap这个了,不知道怎么弄了,没有搞多渠道,文档方法好使,多渠道不知道怎么搞,无效

XiongKe94 commented 11 months ago

//多渠道配置 productFlavors {

    neo {//主包app
        applicationId "com.dinerosea333.cash.credito.lana.presto"
        versionName "1.2.2"
        versionCode 14
        buildConfigField "String", "channel", "\"10000\""

    }
    zephla {//马甲包app
        applicationId "com.zephla22.app"
        versionName "1.0.0"
        //马甲包不同的配置 可以在这里设置  我这里设置的是渠道  可以自行配置
        buildConfigField "String", "channel", "\"10001\""
    }

之前版本,我是 applicationVariants.all { variant -> println("runTasks ----variant.name>" + variant.name)

    switch (variant.name) {
        case "neoRelease":
            androidJunkCode.configMap.put(variant.name, {

                packageBase = "com.neo.plugin.ui" //生成 java 类根包名

                packageCount = 30 //生成包数量

                activityCountPerPackage = 3 //每个包下生成 Activity 类数量

                excludeActivityJavaFile = false
                //是否排除生成 Activity 的 Java 文件,默认 false(layout 和写入 AndroidManifest.xml 还会执行),主要用于处理类似神策全埋点编译过慢问题

                otherCountPerPackage = 50 //每个包下生成其它类的数量

                methodCountPerClass = 20 //每个类下生成方法数量

                resPrefix = "junk_" //生成的 layout、drawable、string 等资源名前缀

                drawableCount = 300 //生成 drawable 资源数量

                stringCount = 300 //生成 string 数量

            })
            break ,这样弄的

新版本就没有configMap这个了,不知道怎么弄了,没有搞多渠道,文档方法好使,多渠道不知道怎么搞,无效

这个我也不清楚 抱歉 😂

longkehuawei commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀?

Quyunshuo commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀?

最近可能久一点,十天半个月,也有的号很快,两三天,这个都不太一样,也跟品类有关系

longkehuawei commented 11 months ago

金融类的呢?是不是比较慢,最近为啥久一点呀,有啥不一样么

XiongKe94 commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀? 五六天吧 就上架了,但是马甲包容易封号 ,封了我们好几个号了,哎

longkehuawei commented 11 months ago

你们也是金融类的app 吗?5-6天是说工作日吗?

longkehuawei commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀? 五六天吧 就上架了,但是马甲包容易封号 ,封了我们好几个号了,哎

用了这个垃圾代码的工具了吗

XiongKe94 commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀? 五六天吧 就上架了,但是马甲包容易封号 ,封了我们好几个号了,哎

用了这个垃圾代码的工具了吗

之前没用 被封了之后我才想到去查查,之前就加了个简单的混淆,你加我QQ把,有空咱们可以聊聊

longkehuawei commented 11 months ago

你们google 上首次包,一个审核时间需要多久呀? 五六天吧 就上架了,但是马甲包容易封号 ,封了我们好几个号了,哎

用了这个垃圾代码的工具了吗

之前没用 被封了之后我才想到去查查,之前就加了个简单的混淆,你加我QQ把,有空咱们可以聊聊 964761087

加了,你们有没有遇到用这个工具后,打包apk包么有问题,打aab之后,有崩溃的问题

ljqiang commented 11 months ago

1.使用包名转换器将项目目录改变,和代码层目录。 2.混淆时候有混淆字典txt文件,不同马甲包使用不同字典混淆出来方法难以辨认. 3.插件将项目资源图片,字符串名称再次重命名. 4.使用Android垃圾代码生成器,动态插入垃圾代码和垃圾图片. 5.将项目图片拷贝出,使用插件更新Hash值,2张图质量一样但不是相同图片。

还有没有其他建议的方法?

你好,请问第三个工作是用哪个插件完成的啊,谢谢啦