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

Android 开发好难啊,现在应该怎么学习

  •  
  •   magic3584 · 314 天前 · 2592 次点击
    这是一个创建于 314 天前的主题,其中的信息可能已经有所发展或是发生改变。

    独立项目,1 年多了,用的 flutter 。

    自从项目创建后一直写的 iOS 代码,昨天想兼容下 android ,发现怎么都跑不起来,一直报错。搜索后按https://stackoverflow.com/a/70807648/4256995 发现问题还是存在,索性釜底抽薪了,重新创建了一个新的 flutter 项目,然后把相关文件都同步到项目里。

    修改了以下内容:

    1. /android/app/build.gradle/android/gradle/(build & settings).gradle 一共 3 个文件全部替换
    2. /gradle/wrapper/gradle-wrapper.propertiesdistributionUrl=https://services.gradle.org/distributions/gradle-6.7-all.zip 升级到了 7.5
    3. 搜索解决了一些别的问题

    最后,终于跑起来了,结果运行起来又报错Application is waiting for the debugger to attach. 搜索了许久还没解决,而上面到现在已经花费了我 6 个小时。。。

    有 JDK 版本,Gradle 版本,还要对应上,还有个插件版本,wtf 。。。反观 iOS 多简单啊,基本啥都不用操心。

    所以请教一下这个问题怎么解决?还有现在怎么学习 android ?貌似有新的 Jetpack?

    16 条回复    2024-01-01 21:41:59 +08:00
    winterbells
        1
    winterbells  
       314 天前 via Android
    waiting for the debugger to attach
    把 adb.exe 杀掉看看
    kassadin
        2
    kassadin  
       314 天前
    从 android 运行项目,类似从 xcode 启动,不是 flutter run ,会隐藏日志。
    还查不出来就 gradle assembleDebug --debug(大概)
    “反观 iOS 多简单啊,基本啥都不用操心”
    双端开发哪个都不省心,依赖更新后双端都要跑,否则就是你现在的情况
    magic3584
        4
    magic3584  
    OP
       314 天前
    @kassadin #2
    嗯,我已经用 android studio 启动了,不怕大佬笑话,vscode 都不知道怎么跑 android 。。。
    iOS 就一个文件打开就能跑了,也不需要多个版本去对应问题。
    这不刚开始看看要不要更新兼容,之前也是 sqlite 在 iCloud 上同步不太好,而且想要将来兼容 android 所以一直没切 CoreData
    no13bus
        5
    no13bus  
       314 天前
    项目不着急的话,就用原生写吧。jetpack compose 也不难,写惯 swiftui 的话,写这个差不离。不行就问 gpt
    kuituosi
        6
    kuituosi  
       313 天前
    安卓是这辈子都不愿意碰的方向,从软件工程角度看完全是灾难。
    我后端出身,学写 ios/web 基本压力不大,安卓真的是太糟糕了
    我宁愿去碰嵌入式和 win 桌面,都不愿意碰安卓
    ChoiKarl
        7
    ChoiKarl  
       313 天前
    安卓的那一堆配置对我来说简直是灾难,升级了 as 莫名其妙就不能运行了,按照网上的方法一顿捣鼓也不行,然后可能莫名其妙的又好了。每次升级完 as 都要祈祷项目不要出问题。
    nnegier
        8
    nnegier  
       313 天前
    @ChoiKarl 是这样的。老炮有时候也莫名其妙这样,有时候都是直接建新项目,老代码抄过去,不过这个方法更累,属于没办法的办法。
    okakuyang
        9
    okakuyang  
       313 天前
    flutter 默认的模版应该能运行吧,一点点把代码加进去呗。
    magic3584
        10
    magic3584  
    OP
       313 天前 via iPhone
    @no13bus #5
    写两端对我来说工作量太大了,选 flutter 就是想省事
    magic3584
        11
    magic3584  
    OP
       313 天前 via iPhone
    @kuituosi #6

    @ChoiKarl #7

    @nnegier #8
    现在了解到有 JDK ,android SDK ,gradle ,gradle 插件,而且还要版本兼容,好不容易能运行,又白屏。。。
    magic3584
        12
    magic3584  
    OP
       313 天前 via iPhone
    @okakuyang #9
    为了求稳我都不升级依赖版本。这次不得以调了半天还不行,所以新建了项目后把配置还得全粘过去,要不然真不知道怎么改。搜索都没答案
    CoderMVP
        13
    CoderMVP  
       313 天前
    “Application is waiting for the debugger to attach”,看下开发者选项->等待调试程序 是不是打开了。然后在代码里搜下有没有“Debug.waitForDebugger”这样的调用,先注掉再运行试试
    anjingdexiaocai
        14
    anjingdexiaocai  
       312 天前 via Android   ❤️ 2
    Android 开发搞了 7/8 年,都觉得 Android 的配置很恶心。
    unco020511
        15
    unco020511  
       312 天前
    Android 本来就是这样的,很难做到开箱即用.你基于 flutter 已经是略过很多原生开发的知识了
    magic3584
        16
    magic3584  
    OP
       312 天前
    @CoderMVP #13
    都没有。新起一个 flutter 项目跑起来没问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   975 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 21:16 · PVG 05:16 · LAX 13:16 · JFK 16:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.