Android面试反思:开发5年crud背景,惨遭字节阿里双挂,Android已死

  • TextView的绘制流程 怎么处理换行

  • 性能优化都做了哪些

  • Shareperference实现机制

  • 插件化原理

  • ViewRootImpl都做了哪些事情

  • 都有哪些window类型 内部是怎么处理window不同权限的

  • 算法:

给定一个数N 如23121 给定一组数字A如{2,4,9}; 求由A中元素组成的、小于N的最大数,如小于23121的最大数为22999

涂鸦智能(现场面试两轮)


一面

  • 讲一下Handler消息机制

  • 项目中都做了哪些性能优化

  • 讲一下绘制流程 View和ViewGroup的区别

  • 事件分发流程是怎么执行的

  • http的请求过程

  • HashMap原理 put过程、扩容 1.7 1.8区别ConcurrentHashMap原理

二面

  • MQTT协议的特点 底层原理

  • Activity启动流程 为什么zygote使用socket通信

  • 插件化原理 遇到过什么问题 怎么解决的

  • classLoader双亲机制

  • 模块化通信 自己设计一套怎么实现

  • tcp协议请求过程

面试结束后已经中午吃饭了 面试官让等一会 结果又让等通知

等了有一个星期邮件通知感谢

阿里(三面挂)


初面(电话简单聊了二十分钟)

  • 项目经历 主要做过哪些业务功能

  • 性能优化

  • 有遇到过哪些比较难的问题

  • 讲一下MQTT协议

  • 注解和反射原理

  • HashMap内部实现原理 怎么hash的 怎么扩容 1.7、1.8什么区别 多线程会导致什么问题

  • 项目中人脸识别用到了哪些业务场景

这一面应该是筛选下简历 不算正式面世

一面(电话面试四十分钟)

  • 介绍自己做过的项目 处理了什么问题

  • ListVie

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android Room是Google为Android平台开发一个SQLite对象映射据库框架,它提供了一种简单的方式来访问SQLite据库。下面是使用Room进行SQLite查询的基本步骤: 1. 定义实体类:在Room,表是通过实体类来表示的。你需要定义一个Java类来表示据库的每个表,并使用注释来指定表名、列名等信息。 2. 定义DAO接口:DAO(Data Access Object)是用于访问据库的接口。你需要定义一个接口来提供对实体类的CRUD操作。 3. 创建据库:使用Room,你可以在应用程序创建一个SQLite据库。你需要创建一个继承自RoomDatabase的抽象类,并定义抽象方法来获取DAO对象。 4. 执行查询操作:在DAO接口定义查询语句,并在应用程序调用该方法来执行查询操作。以下是一个使用Room进行查询的示例: ```java @Dao public interface UserDao { @Query("SELECT * FROM user WHERE id = :userId") User getUserById(int userId); @Query("SELECT * FROM user WHERE name LIKE :name") List<User> getUsersByName(String name); @Insert void insertUser(User user); } ``` 在上面的示例,@Query注释指定了查询语句,getUserById方法根据用户ID查询用户,getUsersByName方法根据名称查询用户,insertUser方法将用户插入据库。 要使用上述查询方法,你需要创建一个RoomDatabase实例并获取UserDao对象。以下是一个使用Room进行查询的示例: ```java UserDatabase db = Room.databaseBuilder(getApplicationContext(), UserDatabase.class, "user.db").build(); UserDao userDao = db.userDao(); // 根据ID查询用户 User user = userDao.getUserById(1); // 根据名称查询用户 List<User> users = userDao.getUsersByName("John"); // 插入用户 User newUser = new User("Alice", "[email protected]"); userDao.insertUser(newUser); ``` 在上面的示例,我们创建了一个UserDatabase实例,并使用其userDao()方法获得UserDao对象。然后我们可以使用UserDao对象的方法来执行查询和插入操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值