想学习安卓开发,应该从哪开始 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wayne3602
V2EX    Android

想学习安卓开发,应该从哪开始

  •  
  •   wayne3602 2023-07-18 16:24:26 +08:00 via Android 12943 次点击
    这是一个创建于 814 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我学习安卓开发的目的有两个:一是做一些简单的 app 满足自己和家人的需求,做的好的话当然是发布出来;二是我想对已有的软件功能进行修改,现在的大厂软件一个比一个难用,用别人的修改版不放心也不太适合自己的需求



    一个是安卓开发,一个是安卓逆向,这两个的学习会冲突吗(也就是需要同时学两个方面的东西吗)?


    请各位大佬为我提供一个大体的学习路线,谢谢各位了
    19 条回复    2023-07-27 09:06:17 +08:00
    estk
        1
    estk  
       2023-07-18 16:38:06 +08:00
    estk
        2
    estk  
       2023-07-18 16:38:48 +08:00
    @estk #1
    做一些简单的 app 满足自己和家人的需求:用 expo 这个比较快
    YsHaNg
        3
    YsHaNg  
       2023-07-18 16:49:01 +08:00
    build chromium
    superedlimited
        4
    superedlimited  
       2023-07-18 16:52:46 +08:00 via iPhone
    开始很简单,
    1. java se
    2. kotlin
    3. developer.android.com
    wayne3602
        5
    wayne3602  
    OP
       2023-07-18 16:53:08 +08:00 via Android
    @estk 谢谢推荐,但是我想从底层开始学习还行整一点逆向
    wayne3602
        6
    wayne3602  
    OP
       2023-07-18 16:55:01 +08:00 via Android
    @superedlimited 问一下佬,se 是指
    LemonZest
        7
    LemonZest  
       2023-07-18 16:56:48 +08:00 via Android
    mineralsalt
        8
    mineralsalt  
       2023-07-18 16:57:19 +08:00
    你真想搞逆向, 就不应该从底层开始学, 先把 APP 开发彻底弄明白, 然后再深入系统源码, 最后才有资格去弄逆向, 不然你拿到一个 app, 连人家怎么个运行逻辑都弄不明白, 都不知道调用的什么系统 api, 还逆向个锤子
    AllenTsui
        9
    AllenTsui  
       2023-07-18 16:59:52 +08:00
    去 B 站搜索,安卓开发和安卓逆向都有成体系的课程,边看边练就能入门。
    wayne3602
        10
    wayne3602  
    OP
       2023-07-18 17:11:56 +08:00
    @mineralsalt 好的,那我还是先学习开发吧
    gaifanking
        11
    gaifanking  
       2023-07-18 17:53:43 +08:00
    我感觉逆向还是挺难吧,混淆后 java 基本没法看,如果直接搞 smali 那你的汇编基础好吗?
    再说搞逆向的也不是为了完善功能,大多是套壳加广告或者破解算法之类的吧。

    另外话说回来如果是业余爱好随便学,但千万别搞成职业就行。
    maybedk
        12
    maybedk  
       2023-07-18 18:50:37 +08:00
    直接去学就可以,大把教程叫你怎么插入一个按钮然后给按钮怎么绑定一个方法。你说的逆向应该是指 xposed 那些模块的开发吧,这个的难点主要在于 hook 的经验,多看看其他模块的源码是怎么 hook 的,大厂的 app 一般都会做混淆。
    nmap
        13
    nmap  
       2023-07-18 18:59:37 +08:00
    开发个 5 年以上经验再谈逆向
    joshua7v
        14
    joshua7v  
       2023-07-18 20:48:11 +08:00 via iPhone
    不了解正向,又如何逆向
    ShrinkLynn
        15
    ShrinkLynn  
       2023-07-19 09:49:55 +08:00
    有本很多搞安卓的朋友给我推荐的书《第一行 Android 代码》,挺靠谱的,内容也很新,可以跟着这个学
    wayne3602
        16
    wayne3602  
    OP
       2023-07-19 10:49:08 +08:00
    @ShrinkLynn 好的,谢谢推荐,我现在准备先学习 java 基础再去看代码
    ysy950803
        17
    ysy950803  
       2023-07-19 12:48:18 +08:00 via Android
    Android 开发者官网是最好的学习资料,Google 的那个 Codelab 很实用很适合新手。
    MZRME
        18
    MZRME  
       2023-07-23 22:37:40 +08:00
    @wayne3602 来学习编译 rom 这些的?例如设备树和 kernel
    zinwalin
        19
    zinwalin  
       2023-07-27 09:06:17 +08:00
    安卓系统的定制是一条曲折的路,需要很多背景知识和耐心。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     900 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 19:47 PVG 03:47 LAX 12:47 JFK 15:47
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86