技术原理

2020年你必须准备的前50个安卓面试问题

成为认证专业的安卓面试问题

,同时iOS和安卓技能都是高需求,雇主雇用安卓开发人员的速度和频率远远超过移动技术领域的任何其他专业人员。据预计,2019年智能手机用户数将增长约25亿Statista.com网站. 同一份报告指出,Android占据了全球智能手机市场的80%的销量。随着这些数字在未来几年才有望上升,安卓应用程序开发认证已成为当今市场上最热门的技能之一!”

对Android开发人员的需求正在急剧上升,现在正是进入Android开发行业的时候。为了帮助您开始面试,我们编制了一份常见的安卓面试问题列表,帮助您在接下来的安卓面试中取得优异成绩。如果你自己参加过Android的面试,或者有任何问题需要我们为你解答,请随时将其添加为下面的评论。

Q1。Android的最新版本是什么?列出所有Android版本。”最新版本是Android 9.0,Android Pie于2018年8月发布。Android是Google开发的移动操作系统。它基于Linux内核,主要为智能手机和平板电脑等触摸屏移动设备设计。所有其他安卓版本都是以甜品或甜点命名的。下表表示Android名称,版本和发布年份。

Android名称Android发布年份Android 1.5 Android Cupcake 2009 1.6 Donut 2009 2.0-2.1 Eclair 2009 2.2–2.2.3 Froyo 2010 2.3–2.3.7姜饼2010 3.0–3.2.6蜂巢2011 4.0–4.0.4冰淇淋三明治2011 4.1–4.3.1果冻豆2012 4–4.4 KitKat 2013 5.0–5.1.1棒棒糖2014年6.0–6.0.1棉花糖2015年7.0–7.1.2牛轧糖2016年8.0–8.1奥利奥2017年9.0派2018年第二季度。什么是活动?哪个方法由活动的所有子类实现?

活动是Android中应用程序的屏幕表示。

它充当用户交互的入口点。每个活动都有一个布局文件,您可以在其中放置UI。应用程序可以有不同的活动。例如,在facebook的起始页中输入电子邮件/电话和密码以登录,这是一个活动。下面的

是几乎所有活动子类都将实现的两个方法:

onCreate(Bundle):这是一个完成初始化的方法。在此情况下,将使用定义用户界面的布局资源调用setcontentview(int)。此外,还可以使用findViewById(Int)检索该UI中的小部件。这些是以编程方式交互所必需的。onPause():这是一个方法,每当用户离开活动时,它都会处理该用户。因此,用户所做的任何更改都应该提交给保存数据的ContentProvider。

活动被实现为activity类的一个子类,如下所示:

}意图i=新意图(行动视图,Uri.解析("http://www.edureka.co网站"));另一方面,

显式帮助您从一个活动切换到另一个活动(通常称为目标活动)。它还用于使用putExtra方法传递数据,并由其他活动通过getIntent().getExtras()方法检索。

例如:

意图i=新意图(这个,活动2.类);#activity2是目标组件i、 putExtra(“Value2”,“此值2用于activity2”);问题10。什么是Android框架?”

的Android框架是Android架构的重要组成部分。它是一组api,允许开发人员编写应用程序,并具有以下组件:

服务组件,这些组件在后台执行长时间运行的操作,而不包括用户界面。从其他应用程序组件启动操作的意向对象,可以在程序内(显式意向)或通过设备上的另一个软件(隐式意向)。为用户提供屏幕的活动组件,用户可以在屏幕上与对象交互并执行操作。这是部署意图的基地。内容提供商组件,允许用户访问应用程序中的数据,如音频、视频、图像、联系信息等。其他应用程序小部件、进程和线程Q11。android中的文件、类和活动有什么区别?”它们之间的区别如下:

文件是存储信息的任意信息或资源块。它可以是任何文件类型。类是从.Java文件编译而来的,Android使用该文件生成可执行的apk。活动相当于GUI工具包中的一个框架/窗口。它不是一个文件或文件类型,而是一个类,可以在Android中扩展,以便在视图中加载UI元素。问题12。什么是Google Android SDK?android SDK中有哪些工具?”

“Google Android SDK是一个工具集,它为开发人员提供在Windows、Mac或Linux中构建、测试和调试Android应用程序所需的API库和工具。Android SDk中的工具是:

Android模拟器DDMS–Dalvik调试监控服务AAPT–Android资产打包工具ADB–Android调试桥Q13。干杯是什么?写出它的语法。Toast通知是弹出在窗口上的消息。它只覆盖了消息所需的大量空间,用户最近的活动保持可见和交互式。通知自动淡入和淡出,不接受交互事件。

语法:

吐司.makeText(项目活动。此,“您的留言在这里”,吐司。长度).show();公共类MyReceiver扩展了BroadcastReceiver{Public void onReceive(上下文,意图){}问题17。如何将数据传递给子活动?我们可以使用bundle将数据传递给子活动。有一些类似HashMaps的数据类型很简单。这些捆绑包将信息从一个活动传输到另一个活动b、 putString(“电子邮件”abc@xyz.com");问题18。在Android中WebView有什么用途?”

“web view是在应用程序中显示网页的视图。根据Android的说法,“这个类是您滚动自己的web浏览器或在活动中简单显示一些在线内容的基础。它使用WebKit呈现引擎来显示网页,包括在历史记录中前后导航、放大和缩小、执行文本搜索等方法。要将WebView添加到应用程序中,必须将元素添加到XML布局文件。

Q19。Android中有哪些不同类型的上下文?”

上下文定义应用程序的当前状态。Context提供了创建新活动实例、访问数据库、启动服务等的访问权限。有一个基类ApplicationContext,以及组件的子类:activity、service。

Q20。简要说明创建新应用程序时的重要文件和文件夹?应用程序-它描述了应用程序的基本特性,并定义了它的每个组件。java—它包含项目的.java源文件。默认情况下,它包括main活动.java源文件。在此情况下,您将创建所有扩展名为.java的活动以及应用程序背后的所有代码。main活动.java是转换为dalvik可执行文件并运行应用程序的实际文件。res–它是定义应用程序用户界面的文件的目录。您可以添加TextView、button等来构建GUI并使用其各种属性,如安卓:布局宽度, 安卓:布局高度用于设置其宽度和高度的etc。Gradle脚本–这是一个自动生成的文件,包含compileSdkVersion、buildToolsVersion、applicationId、minSdkVersion、targetSdkVersion,版本代码和版本名称components- android interview questions - edurekaQ21。Android中有哪些不同的存储方法?”Android提供了几个选项来查看持久的应用程序数据。它们是:

共享首选项-将私有原始数据存储在键值对内部存储-将私有数据存储在设备内存外部存储-将公共数据存储在共享外部存储SQLite数据库-将结构化数据存储在私有数据库Q22中。你能在android上部署可执行jar吗?它支持哪个包?”

“不,Android不支持JAR部署。应用程序使用Android资产打包工具(APT)打包到Android包(.apk)中,然后部署到Android平台上。什么是服务?如何实施?”

“android中的服务是一个后台进程,用于执行长时间运行的操作。比方说,当用户在不同的应用程序中时,位置服务在后台是活动的。因此它不会干扰用户与活动的交互。现在,服务分为两种类型,即:

本地服务:此服务是从应用程序内部访问的。远程–此服务可从同一设备上运行的其他应用程序远程访问。”它被实现为服务类的一个子类,如下所示:

公共类MyService扩展了服务{问题24。什么是粘性意图?”

“粘性意图是一个来自sendStickyBroadcast()方法的广播,它甚至在广播之后浮动,允许其他人从中收集数据。”

“Q25。解释Android应用程序的文件夹、文件和描述src:包含项目的.java源文件。gen:包含.R文件,一个编译器生成的文件,引用项目中找到的所有资源。bin:包含ADT在构建过程中构建的Android包文件.apk以及运行Android应用程序所需的一切。res/drawable hdpi:这是为高密度屏幕设计的可绘制对象的目录。res/layout:这是定义应用程序用户界面的文件的目录。res/values:这是包含资源集合(如字符串和颜色定义)的其他各种XML文件的目录。AndroidManifest.xml文件:这是描述应用程序基本特性并定义其每个组件的清单文件。问题26。清单文件如何在应用程序开发中发挥不可或缺的作用?”

“Manifest文件起着不可或缺的作用,因为它向Android系统提供了有关应用程序的基本信息,系统必须拥有这些信息才能运行应用程序的任何代码。Manifest文件执行各种任务,例如:

它为应用程序命名Java包,因为包名用作应用程序的唯一标识符。它通过声明权限来保护应用程序,以便访问受保护的API部分并与其他应用程序交互。Manifest文件声明android API的最低级别,并列出与应用程序链接的库。清单文件列出检测类。这些类在应用程序运行时提供分析和其他信息,但一旦应用程序发布,这些信息就会被删除。它只会保留到应用程序处于开发模式。”清单文件的结构:清单文件的结构由各种元素组成,如操作、活动、活动别名等。请参阅下面的屏幕截图,其中显示了清单文件的一般结构。

cmanifest公司xmlns:android系统=“http://schemas.android.com/apk/res/android"包=“网址:com.example.aayushi.myapplication“>问题27。片段和活动有什么区别?”

活动通常是用户可以执行的单一、集中的操作,例如拨号、拍照、发送电子邮件、查看地图等。

片段是活动的模块化部分,具有自己的生命周期和输入事件,可以随意添加或删除。此外,片段的生命周期直接受其宿主活动生命周期的影响,即当活动暂停时,其中的所有片段都会受到影响,当活动被破坏时,其所有片段也会受到影响。

Q28。在应用程序部署后,是否可以更改其名称?”

“不建议在应用程序部署后更改它。这可能会破坏某些功能。

Q29。Android使用什么数据库?它与客户机-服务器数据库管理系统有何不同?”

“SQLite是一个开源的关系型数据库,SQLite引擎是无服务器的、事务性的、自包含的,它不是大多数数据库管理系统的典型的客户-服务器关系,而是与应用程序集成在一起的,库也可以动态调用,使用简单的函数减少数据库访问延迟的调用。

Q30。什么是DDMS?”

“DDMS代表Dalvik调试监视器服务器。它提供了以下一系列调试功能:

端口转发服务屏幕捕获设备线程和堆信息Logcat传入呼叫和短信欺骗网络流量跟踪位置数据欺骗Q31。服务和线程有什么区别?服务线程服务类似于活动,但没有接口。线程是并发的执行单元。服务不是一个单独的进程。它在后台工作,直到服务或其他人显式地停止它。默认情况下,同一应用程序的所有组件都在同一进程和线程(称为“主”线程)中运行。当应用程序被终止时,服务不会被终止。当应用程序被终止时,线程被终止。它通过调用上下文.bindService(). 谷歌已经将处理器和循环程序引入到android线程中。问题32。集装箱是什么?”

“容器将对象和小部件放在一起,这取决于需要哪些特定的项,以及需要什么特定的排列方式。容器可以包含标签、字段、按钮,甚至子容器,例如。

Q33。安卓有哪些缺点?”

“Android是一个开源平台,考虑到不同的Android操作系统已经在不同的移动设备上发布,应用程序如何适应不同的操作系统版本和升级还没有明确的政策。在一个版本的Android操作系统上运行的应用程序可能在另一个版本上运行,也可能不在另一个版本上运行。

另一个缺点是,开发人员很难创建能够正确调整屏幕大小和各种Android设备的其他不同功能和规格的应用程序。

Q34。什么是Android运行时?Android运行时由Dalvik虚拟机和核心Java库组成。DVM针对低处理能力和低内存环境进行了优化。与JVM不同,Dalvik虚拟机不运行.class文件,而是运行.dex文件。Android2.2“Froyo”将基于跟踪的即时(JIT)编译引入到Dalvik中,优化应用程序的执行,并将频繁执行的短字节码动态编译为本机代码

“”Android Runtime - Android Interview Questions - Edureka“”

“”Q35。Android中模拟器的重要性是什么?仿真器允许您在一个界面周围播放,该界面的作用就像它是一个实际的设备。它允许您编写和测试代码,甚至调试。它是测试代码的安全场所,尤其是在早期设计阶段。问题36。说出活动的四种基本状态。”

“活动的四个基本状态是:

活动-如果活动在前台暂停-如果活动在后台并且仍然可见停止-如果活动不可见,因此被另一个已销毁的活动隐藏或遮挡,则在活动进程终止或完成时终止Q37。普通位图和九块图像有什么区别?”

“与位图不同,九个补丁的图像可以调整大小并用作目标设备的背景或其他图像大小。九个面片指的是调整图像大小的方法:4个未缩放的角、4个在1个轴上缩放的边以及中间的一个可以缩放到两个轴上。这就是九个补丁图像与普通位图的区别。

Q38。android的核心构建块是什么?活动:活动是Android中任何应用程序的屏幕表示。每个活动都有一个布局文件,您可以在其中放置UI。内容提供程序:内容提供程序在应用程序之间共享数据。服务:它是一个在后台运行的组件,可以在不与用户交互的情况下执行长时间运行的操作,甚至在应用程序被破坏时也可以工作。广播接收器:它响应来自其他应用程序或系统本身的广播消息。这些消息有时称为事件或意图。问题39。Android支持哪些对话框?”

“Android支持四个对话框:

警报对话框:警报对话框支持零到三个按钮和可选元素列表,包括复选框和单选按钮。在其他对话框中,建议最多的对话框是警报对话框。ProgressDialog:此对话框显示进度控制盘或进度条。它是AlertDialog的扩展,支持添加按钮。DatePickerDialog:此对话框用于用户选择日期。TimePickerDialog:此对话框用于用户选择时间。问题40。APK代表什么?

APK代表Android打包包。Android打包密钥是用类、UI、支持资源和清单压缩的。所有这些文件都被压缩成一个名为APK.

Q41的文件。什么是粘性广播?举个例子。”

“一个粘性的广播用于应用程序之间的通信。这些广播在没有通知用户的情况下进行。Android操作系统通常将每个应用程序视为一个单独的用户。下面是一个例子:当您为该操作调用registerReceiver()时(即使使用空的BroadcastReceiver),也会得到上次为该操作广播的意图。因此,您可以使用它来查找电池的状态,而不必为将来电池中的所有状态更改注册。

Q42。什么是Dalvik虚拟机(DVM)?Dalvik是Android虚拟机的名字。Dalvik VM是一个仅限解释器的虚拟机,它执行Dalvik可执行文件(.dex)格式的文件。虚拟机是基于寄存器的,可以运行Java语言编译器编译的类,这些类已使用附带的“dx”工具更改为其本机格式。Dalvik核心类库被设想为那些使用Java标准版编程的人提供一个熟悉的开发基础,但是它明确地适应了小型移动设备的需要。问题43。安卓系统有哪些例外?InflateException:当出现错误条件时,将引发此异常。Surface.outofresource异常:未创建或调整曲面大小时,将引发此异常。SurfaceHolder.BadSurfaceTypeException:在曲面“Surface_TYPE_PUSH_BUFFERS”上调用时,将从lockCanvas()方法引发此异常。窗口管理器.BadTokenException:试图查看无效的窗口管理器.LayoutParamstoken问题44。什么是内容提供商?它是如何实施的?内容提供程序管理对结构化数据集的访问。它是将一个进程中的数据与另一个进程中运行的代码连接起来的标准接口。它们封装数据并提供定义数据安全性的机制。内容提供程序用于在不同的应用程序之间共享数据。”

“它是作为Con的一个子类实现的tentProviderclass必须实现一组标准的API,使其他应用程序能够执行事务。

公共类MyContentprovider扩展ContentProvider{}问题45。.dex文件的意义是什么?Android程序被编译成“.dex”(Dalvik可执行文件)文件,这些文件被压缩成设备上的单个.apk文件。“.dex”文件可以通过翻译用Java编写的编译应用程序来创建。(.dex)是一种为有效的存储和内存可映射执行而优化的格式。如何将转义字符用作属性?”

“转义字符前面有双反斜杠。例如,使用'n'

Q47创建换行符。亚行代表什么?”

“ADB代表Android调试桥,它是一个命令行工具,用于与模拟器实例通信。ADB可以通过计算机的USB控制设备,来回复制文件,安装和卸载应用程序,运行shell命令,还有更多。

这是一个客户机-服务器程序,包括三个组件:•客户机-在开发机器上运行。可以通过发出ADB命令从shell调用客户机。其他Android工具,如DDMS,也可以创建ADB客户端。•服务器,在开发机器上作为后台进程运行。服务器管理在模拟器或设备上运行的客户端和ADB守护进程之间的通信。•守护进程,在每个模拟器或设备实例上作为后台进程运行。

Q48。您能列出并解释与在Android平台上使用传感器相关的四个Java类吗?”

“传感器管理器:此类提供有关传感器事件侦听器注册、数据采集管理和校准的方法。它还提供了访问和列出传感器的方法。

传感器:此类创建特定传感器的实例,提供允许您确定其功能的方法。

sensor event:此类通过创建传感器事件对象提供有关传感器事件的信息。

SensorEventListener:此接口提供两个可接收传感器事件通知的回调方法。

Q49。安卓的定位是什么?怎么做到的?”

方向有助于表示行或列中的布局。

语法:

问题50。什么是艾德?AIDL支持哪些数据类型?”

“AIDL代表Android界面定义语言。–它处理客户机和服务之间的接口需求,以便通过进程间通信在同一级别进行通信。–该过程包括将对象分解为Android可理解的原语。

数据类型:

字符串列表映射CharSequence本机Java数据类型(int、long、char和Boolean)

,因此这将带到Android面试问题博客的结尾。你在这篇Android面试问题文章中学到的主题是招聘人员在Android开发人员中寻找的最受欢迎的技能集。这些安卓面试问题肯定会帮助你在面试中取得优异成绩。祝你面试顺利!”

如果您在这些Android面试问题上遇到任何挑战,请在下面的部分评论您的问题。除了这个Android面试问题,如果你想从专业人士那里得到关于这项技术的培训,你可以选择从edureka那里接受结构化培训!

有问题吗?请在“Android面试问题”的评论部分提到它,我们会给你回复的

你也可能喜欢

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片
人工智能对生活的影响作文200字 投稿者
我还没有学会写个人说明!
最近文章
  • * 没有更多文章了
  • 热门搜索

    分类目录