记录 android 开发的一个 "面试" 问题

前序:

     3天前,有幸得到师兄赏识,和他一起去帮一间珠海的本地的IT公司担任面试官,虽说如此,我自己本身就还没毕业,充其量是去见识下世面罢了。当天共面试了13人,这只是上午,下午我闪了。在笔试的部分,我设置了一个比较简单的和常见的 android 页面跳转问题,当然要给其他"大佬"先审核。

问题原型:

     现有3个页面,A页面每次初始化都会请求一次网络数据,A总是采用startActivity(Intent),跳转到B,B页面是数据编辑页面,它拥有3个按钮,一个点击总是返回A,一个上传数据,最后一个点击跳转到C页面,C页面负责挑选图片或视频,C页面只允许设置一个按钮。

     现需要你在请求网络次数最少的情况下,正确地设置 A->B->C->B->A的跳转逻辑,及其理由。

收到的N种答案(核心如下),理由省略(没记住....):

     1,A跳到B,B的使用startActivity()跳至C,C在选择完数据后,点击按钮采用startActivity()附带数据跳回B,B采用startActivity() 跳回A;

     这个答案,不用多说,弊端就是A就刚初始化APP的时候就请求了一次网络,在最后的跳转又被初始化了一次,而且,B也在C跳的时候被多初始化一次,这种就是盲目使用 statryActivity,作者开发经验较为缺乏。虽然我也是新手,这个还是知道的。

     2,A跳到B,B的使用startActivity()跳至C,C在选择完数据后,点击按钮采用startActivity()附带数据跳回B,B采用finish()跳回A。

     死循环模式,这种直接pass 掉。

     3,A跳到B,B的使用startActivityForResult()跳至C,C在选择完数据后,点击按钮采用finish()附带数据跳B,B采用finish()回A。

     我心中的完美模式。

     4,先声明个全局的static boolean变量。A跳到B,B的使用startActivity()跳至C,C在选择完数据后,将此全局布尔置为true,点击按钮采用finish()跳B,B在onResume 判断此布尔,有数据则进行对应的控件操作,否则不操作,回A采用finish()。

     这类答案也是可行的,作者对Activity的生命周期比较了解,缺点就是牺牲了空间,不可广用。

     .....

结语:

     这问题比较基础,需要一定的实战开发经验和对activity 生命周期的了解才能答得更好,上述仅是个人观点。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏地方网络工作室的专栏

Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版(一)基础知识概述

Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版(一)基础知识概述 前言 2016年,我写了一系列的 VUE 入门教程,当...

1889
来自专栏大数据挖掘DT机器学习

新闻个性化推荐系统(python)-(附源码 数据集)

最近参加了一个评测,是关于新闻个性化推荐。说白了就是给你一个人的浏览记录,预测他下一次的浏览记录。花了一周时间写了一个集成系统,可以一键推荐新...

4355
来自专栏农夫安全

通过HTTP请求方法进行Fuzz绕过测试

“ 今天碰到一个网站,明明是GET传输,却使用了REQUEST接收,其实这也没什么,但是发现某waf的安全级别好像低了很多.这给我激动爬起来就是一顿怼(本地测...

25912
来自专栏花叔的专栏

微信官方新增赞赏码,小程序也能用

最新版6.5.19微信新增了一个新功能可以让用户生成自己的赞赏码,具体方法如下: 到“钱包”-“收付款”里新增了“赞赏码”一栏,点过去就能做自己的赞赏码。 ? ...

7606
来自专栏无原型不设计

国外设计师眼中的原型工具Mockplus

今天,我们评述一款新型设计工具,Mockplus,专为设计师而打造的创新性原型设计工具。Mockplus适合于各种应用软件的制作,无论是手机应用,网页应用,亦...

3274
来自专栏海说

[转]程序员你为什么这么累?

大家一提到程序员,首先想到的是以下标签:苦逼,加班,熬夜通宵。但是,但凡工作了的同学都知道,其实大部分程序员做的事情都很简单,代码CRUD可以说毫无技术含量,就...

662
来自专栏木子昭的博客

往"某度文库"上传资源之前,请先做好这些...想到一句好玩的话:知道是你干的,只是懒得抓你!如果你喜欢python,喜欢故事,请点赞或关注我!您的支持是对作者最大的鼓励!

先讲个相关的故事:匿名黑客的"复仇行动" 2010年12月10日,黑客组织匿名者发布了一条消息,解释了他们发起最近一次代号为”复仇行动”的攻击的大致动机(Pr...

35713
来自专栏前端真相

PTC(pay to click)—— 躺着赚钱(比特币)?

1586
来自专栏IMWeb前端团队

JavaScript: 2015年度回顾(译文)

本文作者:IMWeb coolriver 原文出处:IMWeb社区 未经同意,禁止转载 本文为 《 2015 in review》 一文的中文译文,...

1735
来自专栏FreeBuf

代码审计“吃鸡”辅助外挂黑色产业链

*本文原创作者:Draven,本文属FreeBuf原创奖励计划,未经许可禁止转载 绝地求生可以说是本年度最火的游戏了。首付99,月付30,也可以说是土豪游戏了。...

1907

扫码关注云+社区