V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
alpha1155
V2EX  ›  Android

请问可以根据 android 的 app 的 apk 推出源码吗?是一个声波通信的 app,做课设想参考一下

  •  
  •   alpha1155 · 2021-03-10 21:22:11 +08:00 via Android · 9838 次点击
    这是一个创建于 1352 天前的主题,其中的信息可能已经有所发展或是发生改变。
    31 条回复    2021-03-12 16:13:31 +08:00
    imzcg2
        1
    imzcg2  
       2021-03-10 21:26:00 +08:00 via Android
    看技术水平了,只能这么说
    susunus
        2
    susunus  
       2021-03-10 21:39:51 +08:00 via iPhone
    你能这么问 肯定不能了,可以发出来想法
    systemcall
        3
    systemcall  
       2021-03-10 21:43:59 +08:00
    涉及到逆向。看加了什么壳,还看你的水平
    自己碰运气吧。不过你逆向得到的也是没有注释并且混淆过变量名、函数名之类的东西的代码,可读性还是不太好。还是看你的技术吧
    koast
        4
    koast  
       2021-03-10 22:05:56 +08:00 via Android
    首先现在的 apk 基本都会整个某某厂的加固,脱完壳 dex 可能还是混淆过的(名字啥的全没啥意义),也有控制流混淆啥的,关键逻辑都抽出来做成 native 方法放 so 里....所以有的都做 rpc 调用或者模拟执行 so 之类,还原算法太费劲了...你这做课设估计不能这么干
    divilkcvf
        5
    divilkcvf  
       2021-03-10 22:12:07 +08:00   ❤️ 3
    如何从 apk 反编译已经可以作为你课设的主题了
    co3site
        6
    co3site  
       2021-03-10 22:13:24 +08:00 via iPhone   ❤️ 3
    别跟老夫提什么混淆、加壳、花指令、反调试,老夫就是 Hook 进去一把梭
    yanqiyu
        7
    yanqiyu  
       2021-03-10 22:19:21 +08:00
    可以,但是难度 _可能_ 跟自己琢磨实现高的多
    Perolong
        8
    Perolong  
       2021-03-10 23:07:37 +08:00
    如果没有 native 层,可以,反编译出的 smali 就是阅读性差了一些,大致看个框架调了啥 api 也是没问题的,毕竟最终都要自己写
    likaci
        9
    likaci  
       2021-03-10 23:13:25 +08:00
    先 jadx-gui 看一下
    way2explore2
        10
    way2explore2  
       2021-03-11 06:46:18 +08:00
    @koast correct!!!

    but if it is a react native, things may be different.
    CaffreySun
        11
    CaffreySun  
       2021-03-11 08:25:46 +08:00
    不如问问声波通讯如何实现
    neighbads
        12
    neighbads  
       2021-03-11 08:30:41 +08:00
    问这个 去 52pojie 和 看雪啊。分分钟找到教程
    Nu11Po1nter
        13
    Nu11Po1nter  
       2021-03-11 10:07:12 +08:00
    Kamiyu0087
        14
    Kamiyu0087  
       2021-03-11 10:20:36 +08:00
    声波通信有开源库的呀
    比如 https://github.com/quiet/org.quietmodem.Quiet
    Randomjo
        15
    Randomjo  
       2021-03-11 10:27:31 +08:00
    有个在线的简单反编译,试一下
    http://www.javadecompilers.com/
    ch2
        16
    ch2  
       2021-03-11 11:20:42 +08:00
    gda 了解一下
    Kasumi20
        17
    Kasumi20  
       2021-03-11 14:09:54 +08:00
    反编译 Dalvik VM 字节码,读.smali 汇编
    XD2333
        18
    XD2333  
       2021-03-11 14:36:13 +08:00
    脱壳,反编译,看逆向出来的伪代码或者 smali 。
    alpha1155
        19
    alpha1155  
    OP
       2021-03-12 15:32:20 +08:00 via Android
    @imzcg2 get it
    alpha1155
        20
    alpha1155  
    OP
       2021-03-12 15:38:53 +08:00
    @imzcg2 get it,好好学习,天天向上
    alpha1155
        21
    alpha1155  
    OP
       2021-03-12 15:39:11 +08:00
    @susunus 理解了
    alpha1155
        22
    alpha1155  
    OP
       2021-03-12 15:39:30 +08:00
    @systemcall 好的,我百度看看先
    alpha1155
        23
    alpha1155  
    OP
       2021-03-12 15:40:10 +08:00
    @koast 我先试试,那个感觉挺简单的,就是 sinvoice
    alpha1155
        24
    alpha1155  
    OP
       2021-03-12 15:40:40 +08:00
    @divilkcvf 害,大意了
    alpha1155
        25
    alpha1155  
    OP
       2021-03-12 15:40:55 +08:00
    @yanqiyu 嗯嗯好的,我看看先
    alpha1155
        26
    alpha1155  
    OP
       2021-03-12 15:41:07 +08:00
    @likaci 好!
    alpha1155
        27
    alpha1155  
    OP
       2021-03-12 15:41:23 +08:00
    @CaffreySun 这就问问(
    alpha1155
        28
    alpha1155  
    OP
       2021-03-12 16:12:58 +08:00
    @Nu11Po1nter 好像挺像,我看看先,谢了
    alpha1155
        29
    alpha1155  
    OP
       2021-03-12 16:13:07 +08:00
    @Randomjo 好的
    alpha1155
        30
    alpha1155  
    OP
       2021-03-12 16:13:17 +08:00
    @ch2 这就百度
    alpha1155
        31
    alpha1155  
    OP
       2021-03-12 16:13:31 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2932 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 14:23 · PVG 22:23 · LAX 06:23 · JFK 09:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.