Skip to content

Latest commit

 

History

History
120 lines (89 loc) · 6.17 KB

2-环境配置,语法学习与简单应用.md

File metadata and controls

120 lines (89 loc) · 6.17 KB

西二在线 Android 第二轮考核

零、开始之前

  • 学习安卓开发,首先要知道安卓是什么,安卓有什么特性,和其他系统有什么区别。安卓是一个不断变化,内涵丰富的操作系统,这句话在后续的学习中会越发深刻。
  • 对安卓了解不多的同学,请在网上查找相关资料,也可以查看下面的链接进行了解。可以重点了解近几年安卓的新特性,如权限变化等。推荐通过关注一些公众号(参见前文)来提升关注度。
  • Android 开发简介 - GeeksforGeeks

一、知识点

Android Studio 的安装和使用
常用控件(TextView,Button,EditText,ImageView,RecyclerView,Menu,Viewpager2 等等)和常见布局的使用
Activity之间的跳转和通信(registerForActivityResult 的使用)
debug 试试小黄鸭 debug 法

二、教程

1. 书

2. 其他

要开启开发者模式,可以百度“你的机型+开启开发者模式”。
用过 adb 做这做那的同学应该会很快连上,但是要注意一下你安装的 adb 可能会与 AS 的冲突,或者有版本问题,出问题时可以考虑一下。
有的手机系统会自带网络 adb 可以玩玩,但是好像不稳定有时候连不上。
链接有问题可以自行百度报错内容,也可以百度看看其他教程,欢迎发到群里与大家共享。
教程内容各有千秋,每个人的学习习惯也不同,我们提供的教程也只是九牛一毛,希望大家可以多多尝试,找到适合自己的方法。
注意善用百度、Google 和B站大学即可,有不会、找不到的,也可以随时在群里或者直接私聊问。只要能学到东西,就算是坐悟也是可以的!

三、考核内容

简单仿一个B站动态界面

  1. 两个 Activity

    • MainActivity、DetailActivity
    • 将 MainActivity 设为启动页
  2. 在 MainActivity 中:

    • 上方一个横向滑动的 RecyclerView 用来显示你关注的 up 主头像和名字
    • 下方一个 ViewPager2,ViewPager2 的 item 包括一个 TextView 显示动态简介,一个 ImageView 用来显示动态信息,ImageView 要求能最大程度显示图片所有内容并且不变形(设置 ScaleType)
    • 单击 up 主头像或名字时,下方的内容显示更改为该 up 的动态信息(ViewPager2 的 item 变为对应 up 的 item)
    • ViewPager2 可左右滑动切换不同 up 的动态信息
    动态信息加载本地图片文件即可,不需要实现网络请求,页面参考B站
    
  3. 长按 up 主头像或名字跳转 DetailActivity(用 intent 或其他操作传递信息),在 DetailActivity 中:

    • 显示该 up 主的个人信息(名字、头像、粉丝数等)
    • 一个取关按钮,点击后 Toast 提示取关成功 向上个 Activity 返回数据
    • 关闭 DetailActivity 页面 Activity.finish() 方法 返回到 MainActivity 页面,删除 RecyclerView 数据中被取关的 up 并刷新 RecyclerView
    刷新允许使用 RecyclerView.Adapter 的 notifyDataSetChanged() 方法,但请优先使用更高性能部分更新数据的方法
    
  4. 使用 Databinding 或者 ViewBinding

    • 不使用 findViewById()
    • 考虑如何封装 BaseDataBindingActivity
    两者各有千秋,可以混用,可以只用一个
    

四、注意事项与其他

  1. 考核 优先使用Kotlin 完成,本次还可以混合使用 Java(另外支持学 Flutter 来写!(虽然但是我也不是很会)),但是下一轮是一定要用 Kotlin 的,毕竟安卓的主要发展方向是 Kotlin 了
  2. 打包生成 debug 或 release 安装包 apk,和 整个项目一起上传 至 github,apk 包放在GitHub Releases中,后续会有仓库链接收集
  3. 请注意 规范头像,动态图片等等文件的位置 参考第一行代码的方式
  4. up数量至少 4 个,数据可用一个类或一个方法生成,如:
  class DataSender {
      fun createData(): List<Data> {
          val d1 = Data("gugu")
          val d2 = Data("gugu2")
          val d3 = Data("gugu3")
          return listOf(d1, d2, d3)
      }
  }

  val data: List<Data> = DataSender().createData()
  1. 考核对于 项目结构 比较严格,请参考文章Android开发规范:包命名规范,包括后续的考核项目都要有合理的架构划分。提交的时候一定要整个项目提交到 github 上,如果 无法运行可能会影响考核通过
  2. 代码 尽量简洁 不要太复杂!!!
  3. 开始了解包名,签名,版本名,版本号等常识,也就是一个 apk 安装包的一些基本属性。
  4. MainActivity 页面提供如下参考不用一模一样 ,有不清楚的敲我们~

img