50 câu hỏi phỏng vấn Android & Câu trả lời

Mục lục

tải PDF

1) Android là gì?

Nó là một hệ điều hành mã nguồn mở được sử dụng chủ yếu trên các thiết bị di động, chẳng hạn như điện thoại di động và máy tính bảng. Đây là một hệ thống dựa trên nhân Linux được trang bị với các thành phần phong phú cho phép các nhà phát triển tạo và chạy các ứng dụng có thể thực hiện cả các chức năng cơ bản và nâng cao.

2) Google Android SDK là gì?

Google Android SDK là bộ công cụ mà nhà phát triển cần để viết ứng dụng trên các thiết bị hỗ trợ Android. Nó chứa một giao diện đồ họa mô phỏng môi trường cầm tay được điều khiển bởi Android, cho phép họ kiểm tra và gỡ lỗi mã của họ.

3) Kiến trúc Android là gì?

Kiến trúc Android được tạo thành từ 4 thành phần chính:

  • Nền tảng Linux
  • Thư viện
  • Khung Android
  • Ứng dụng Android

4) Mô tả Khung Android.

Khung Android là một khía cạnh quan trọng của Kiến trúc Android. Tại đây, bạn có thể tìm thấy tất cả các lớp và phương thức mà các nhà phát triển cần để viết ứng dụng trên môi trường Android.

5) AAPT là gì?

AAPT là viết tắt của Công cụ đóng gói tài sản Android. Công cụ này cung cấp cho các nhà phát triển khả năng xử lý các kho lưu trữ tương thích với zip, bao gồm tạo, giải nén cũng như xem nội dung của nó.

6) Tầm quan trọng của việc có trình giả lập trong môi trường Android là gì?

Trình giả lập cho phép các nhà phát triển "chơi" xung quanh một giao diện hoạt động như thể nó là một thiết bị di động thực tế. Họ có thể viết và kiểm tra mã, và thậm chí gỡ lỗi. Trình giả lập là một nơi an toàn để kiểm tra mã, đặc biệt nếu nó đang ở giai đoạn thiết kế ban đầu.

7) Việc sử dụng ActivityCreator là gì?

Một ActivityCreator là bước đầu tiên hướng tới việc tạo một dự án Android mới. Nó được tạo thành từ một tập lệnh shell sẽ được sử dụng để tạo cấu trúc hệ thống tệp mới cần thiết để viết mã trong Android IDE.

8) Mô tả các hoạt động.

Các hoạt động là những gì bạn gọi là cửa sổ của giao diện người dùng. Cũng giống như bạn tạo cửa sổ để hiển thị đầu ra hoặc yêu cầu đầu vào dưới dạng hộp thoại, các hoạt động đóng vai trò giống nhau, mặc dù nó có thể không phải lúc nào cũng ở dạng giao diện người dùng.

9) Ý định là gì?

Intents hiển thị tin nhắn thông báo cho người dùng từ bên trong thiết bị hỗ trợ Android. Nó có thể được sử dụng để cảnh báo người dùng về một trạng thái cụ thể đã xảy ra. Người dùng có thể được thực hiện để trả lời các ý định.

10) Phân biệt Hoạt động với Dịch vụ.

Các hoạt động có thể bị đóng hoặc chấm dứt bất cứ lúc nào người dùng muốn. Mặt khác, các dịch vụ được thiết kế để chạy ở hậu trường và có thể hoạt động độc lập. Hầu hết các dịch vụ chạy liên tục, bất kể có hoặc không có hoạt động nào được thực thi.

11) Những mục nào quan trọng trong mọi dự án Android?

Đây là những mục cần thiết có mặt mỗi khi một dự án Android được tạo:

  • AndroidManifest.xml
  • build.xml
  • thùng rác/
  • src /
  • res /
  • tài sản/

12) Tầm quan trọng của bố cục dựa trên XML là gì?

Việc sử dụng các bố cục dựa trên XML cung cấp một phương tiện nhất quán và hơi tiêu chuẩn để thiết lập định dạng định nghĩa GUI. Trong thực tế phổ biến, chi tiết bố cục được đặt trong tệp XML trong khi các mục khác được đặt trong tệp nguồn.

13) Container là gì?

Các thùng chứa, như chính cái tên của nó, chứa các đối tượng và vật dụng lại với nhau, tùy thuộc vào những mục cụ thể nào cần thiết và theo cách sắp xếp cụ thể nào được mong muốn. Các vùng chứa có thể chứa các nhãn, trường, nút hoặc thậm chí các vùng chứa con, làm ví dụ.

14) Định hướng là gì?

Định hướng, có thể được đặt bằng cách sử dụng setOrientation (), ra lệnh nếu LinearLayout được biểu diễn dưới dạng một hàng hay một cột. Các giá trị được đặt là NGANG hoặc VERTICAL.

15) Tầm quan trọng của Android trên thị trường di động là gì?

Các nhà phát triển có thể viết và đăng ký các ứng dụng sẽ chạy cụ thể trong môi trường Android. Điều này có nghĩa là mọi thiết bị di động được bật Android sẽ có thể hỗ trợ và chạy các ứng dụng này. Với sự phổ biến ngày càng tăng của các thiết bị di động Android, các nhà phát triển có thể tận dụng xu hướng này bằng cách tạo và tải ứng dụng của họ lên Android Market để phân phối cho bất kỳ ai muốn tải xuống.

16) Theo bạn, một số nhược điểm của Android là gì?

Do Android là một nền tảng mã nguồn mở và thực tế là các hệ điều hành Android khác nhau đã được phát hành trên các thiết bị di động khác nhau, không có chính sách cắt giảm rõ ràng về cách các ứng dụng có thể thích ứng với các phiên bản và nâng cấp hệ điều hành khác nhau. Một ứng dụng chạy trên phiên bản hệ điều hành Android cụ thể này có thể hoặc không thể chạy trên phiên bản khác. Một nhược điểm khác là vì các thiết bị di động như điện thoại và tab có kích thước và hình thức khác nhau, điều này đặt ra thách thức cho các nhà phát triển trong việc tạo ra các ứng dụng có thể điều chỉnh chính xác cho đúng kích thước màn hình cũng như các tính năng và thông số kỹ thuật khác nhau.

17) Adb là gì?

Adb là viết tắt của Android Debug Bridge. Nó cho phép các nhà phát triển quyền thực thi các lệnh shell từ xa. Chức năng cơ bản của nó là cho phép và kiểm soát giao tiếp tới và đi từ cổng giả lập.

18) Bốn trạng thái thiết yếu của một hoạt động là gì?

  • Đang hoạt động - nếu hoạt động ở nền trước
  • Đã tạm dừng - nếu hoạt động ở chế độ nền và vẫn hiển thị
  • Đã dừng - nếu hoạt động không hiển thị và do đó bị ẩn hoặc che bởi hoạt động khác
  • Bị phá hủy - khi quá trình hoạt động bị giết hoặc kết thúc hoàn thành

19) ANR là gì?

ANR là viết tắt của Application Not Reply. Đây thực sự là một hộp thoại xuất hiện cho người dùng bất cứ khi nào một ứng dụng không phản hồi trong một thời gian dài.

20) Những nguyên tố nào chỉ có thể xảy ra một lần và phải có mặt?

Trong số các phần tử khác nhau, phần tử và phải có mặt và chỉ có thể xuất hiện một lần. Phần còn lại là tùy chọn và có thể xảy ra nhiều lần nếu cần.

21) Các ký tự thoát được sử dụng làm thuộc tính như thế nào?

Các ký tự thoát được bắt đầu bằng dấu gạch chéo ngược kép. Ví dụ: một ký tự dòng mới được tạo bằng cách sử dụng '\\ n'

22) Tầm quan trọng của quyền cài đặt trong phát triển ứng dụng là gì?

Quyền cho phép áp đặt các hạn chế nhất định chủ yếu để bảo vệ dữ liệu và mã. Nếu không có những điều này, các mã có thể bị xâm phạm, dẫn đến các khiếm khuyết trong chức năng.

23) Chức năng của bộ lọc ý định là gì?

Bởi vì mọi thành phần cần chỉ ra ý định nào mà chúng có thể phản hồi, các bộ lọc ý định được sử dụng để lọc ra các ý định mà các thành phần này sẵn sàng tiếp nhận. Có thể có một hoặc nhiều bộ lọc ý định, tùy thuộc vào các dịch vụ và hoạt động sẽ sử dụng nó.

24) Liệt kê ba vòng chính khi theo dõi một hoạt động

  • Toàn bộ vòng đời - hoạt động xảy ra giữa onCreate và onDestroy
  • Thời gian tồn tại có thể nhìn thấy - hoạt động xảy ra giữa OnStart và onStop
  • Thời gian tồn tại của nền trước - hoạt động xảy ra giữa onResume và onPause

25) Phương thức onStop () được gọi khi nào?

Lệnh gọi đến phương thức onStop xảy ra khi một hoạt động không còn hiển thị cho người dùng nữa, vì một hoạt động khác đã tiếp quản hoặc nếu ở phía trước hoạt động đó.

26) Có trường hợp nào trong đó các định tính khác trong nhiều tài nguyên được ưu tiên hơn ngôn ngữ không?

Có, thực tế có những trường hợp trong đó một số từ định tính có thể được ưu tiên hơn ngôn ngữ. Có hai trường hợp ngoại lệ đã biết, đó là vòng loại MCC (mã quốc gia di động) và MNC (mã mạng di động).

27) Các trạng thái khác nhau trong đó một quá trình dựa trên là gì?

Có 4 trạng thái có thể xảy ra:

  • hoạt động tiền cảnh
  • hoạt động có thể nhìn thấy
  • hoạt động nền
  • quy trình trống

28) ANR có thể được ngăn chặn như thế nào?

Một kỹ thuật ngăn hệ thống Android kết luận mã đã phản hồi trong một thời gian dài là tạo một chuỗi con. Trong luồng con, hầu hết các hoạt động thực tế của các mã có thể được đặt để luồng chính chạy với khoảng thời gian không phản hồi tối thiểu.

29) Dalvik đóng vai trò gì trong sự phát triển của Android?

Dalvik đóng vai trò như một máy ảo và nó là nơi chạy mọi ứng dụng Android. Thông qua Dalvik, một thiết bị có thể thực thi nhiều máy ảo một cách hiệu quả thông qua việc quản lý bộ nhớ tốt hơn.

30) AndroidManifest.xml là gì?

Tệp này rất cần thiết trong mọi ứng dụng. Nó được khai báo trong thư mục gốc và chứa thông tin về ứng dụng mà hệ thống Android phải biết trước khi mã có thể được thực thi.

31) Cách thích hợp để thiết lập một thiết bị chạy Android để phát triển ứng dụng là gì?

Sau đây là các bước cần tuân theo trước khi phát triển ứng dụng thực tế trên thiết bị chạy Android:

- Khai báo ứng dụng của bạn là "có thể gỡ lỗi" trong Android Manifest.-Bật "Gỡ lỗi USB" trên thiết bị của bạn.-Thiết lập hệ thống của bạn để phát hiện thiết bị của bạn.

32) Liệt kê các bước trong việc tạo một dịch vụ được giới hạn thông qua AIDL.

1. tạo tệp .aidl, định nghĩa giao diện lập trình 2. triển khai giao diện, liên quan đến việc mở rộng lớp Stub trừu tượng bên trong cũng như cấy ghép các phương thức của nó.

3. hiển thị giao diện, liên quan đến việc triển khai dịch vụ cho khách hàng.

33) Tầm quan trọng của Tài nguyên Mặc định là gì?

Khi các tài nguyên mặc định, chứa các chuỗi và tệp mặc định, không có, sẽ xảy ra lỗi và ứng dụng sẽ không chạy. Các tài nguyên được đặt trong các thư mục con được đặt tên đặc biệt trong thư mục res / của dự án.

34) Khi xử lý nhiều tài nguyên, cái nào được ưu tiên hơn?

Giả sử rằng tất cả các tài nguyên này đều có thể khớp với cấu hình của thiết bị, bộ định lượng 'ngôn ngữ' hầu như luôn được ưu tiên cao nhất so với các tài nguyên khác.

35) ANR xảy ra khi nào?

Hộp thoại ANR được hiển thị cho người dùng dựa trên hai điều kiện có thể. Một là khi không có phản hồi cho một sự kiện đầu vào trong vòng 5 giây, và hai là khi một bộ thu phát sóng không được thực hiện trong vòng 10 giây.

36) AIDL là gì?

AIDL, hoặc Ngôn ngữ định nghĩa giao diện Android, xử lý các yêu cầu giao diện giữa máy khách và dịch vụ để cả hai có thể giao tiếp ở cùng một cấp độ thông qua giao tiếp liên quá trình hoặc IPC. Quá trình này liên quan đến việc chia nhỏ các đối tượng thành các nguyên bản mà Android có thể hiểu được. Phần này được yêu cầu đơn giản vì một tiến trình không thể truy cập bộ nhớ của tiến trình kia.

37) Những kiểu dữ liệu nào được hỗ trợ bởi AIDL?

AIDL hỗ trợ các loại dữ liệu sau:

-string-charSequence-List-Map-tất cả các kiểu dữ liệu Java gốc như int, long, char và Boolean

38) Fragment là gì?

Một phân đoạn là một phần hoặc một phần của hoạt động. Nó là mô-đun theo nghĩa là bạn có thể di chuyển xung quanh hoặc kết hợp với các phân đoạn khác trong một hoạt động duy nhất. Các mảnh vỡ cũng có thể tái sử dụng.

39) Hoạt động hiển thị là gì?

Hoạt động hiển thị là hoạt động nằm sau hộp thoại nền trước. Nó thực sự hiển thị cho người dùng, nhưng không nhất thiết phải ở phía trước.

40) Khi nào là thời điểm tốt nhất để giết hoạt động tiền cảnh?

Hoạt động tiền cảnh, quan trọng nhất trong số các trạng thái khác, chỉ bị giết hoặc chấm dứt như một biện pháp cuối cùng, đặc biệt nếu nó đã tiêu tốn quá nhiều bộ nhớ. Khi một hoạt động nền trước đạt đến trạng thái phân trang bộ nhớ, thì trạng thái đó sẽ bị hủy để giao diện người dùng có thể duy trì khả năng phản hồi của nó đối với người dùng.

41) Có thể sử dụng hoặc thêm một phân đoạn mà không cần sử dụng giao diện người dùng không?

Có, bạn có thể làm điều đó, chẳng hạn như khi bạn muốn tạo một hành vi nền cho một hoạt động cụ thể. Bạn có thể thực hiện việc này bằng cách sử dụng phương thức add (Fragment, string) để thêm một đoạn từ hoạt động.

42) Làm cách nào để xóa các biểu tượng và widget khỏi màn hình chính của thiết bị Android?

Để xóa một biểu tượng hoặc lối tắt, hãy nhấn và giữ biểu tượng đó. Sau đó, bạn kéo nó xuống phần dưới của màn hình nơi xuất hiện nút xóa.

43) Các thành phần cốt lõi trong kiến ​​trúc ứng dụng Android là gì?

Có 5 thành phần chính trong kiến ​​trúc ứng dụng Android:

- dịch vụ- mục đích- bên ngoài tài nguyên- thông báo- nhà cung cấp nội dung

44) Điều gì tạo nên một dự án ứng dụng Android điển hình?

Một dự án do Android phát triển, sau khi biên dịch, sẽ trở thành tệp .apk. Định dạng tệp apk này thực sự được tạo thành từ tệp AndroidManifest.xml, mã ứng dụng, tệp tài nguyên và các tệp liên quan khác.

45) Ý định cố định là gì?

Ý định cố định là một chương trình phát sóng từ phương thức sendStickyBroadcast () sao cho ý định trôi nổi xung quanh ngay cả sau khi phát sóng, cho phép người khác thu thập dữ liệu từ nó.

46) Tất cả điện thoại di động có hỗ trợ hệ điều hành Android mới nhất không?

Một số điện thoại chạy hệ điều hành Android cho phép bạn nâng cấp lên phiên bản hệ điều hành Android cao hơn. Tuy nhiên, không phải tất cả các bản nâng cấp đều cho phép bạn tải phiên bản mới nhất. Nó phụ thuộc phần lớn vào khả năng và thông số kỹ thuật của điện thoại, liệu nó có thể hỗ trợ các tính năng mới hơn có sẵn trong phiên bản Android mới nhất hay không.

47) Điểm phát sóng Wi-Fi di động là gì?

Điểm truy cập Wi-Fi di động cho phép bạn chia sẻ kết nối internet di động của mình với thiết bị không dây khác. Ví dụ: sử dụng điện thoại hỗ trợ Android của bạn làm Điểm truy cập Wi-Fi, bạn có thể sử dụng máy tính xách tay của mình để kết nối Internet bằng điểm truy cập đó.

48) Hành động là gì?

Trong phát triển Android, một hành động là những gì người gửi ý định muốn làm hoặc mong đợi nhận được như một phản hồi. Hầu hết chức năng của ứng dụng dựa trên hành động dự định.

49) Sự khác biệt giữa ảnh bitmap thông thường và ảnh chín bản vá là gì?

Nói chung, hình ảnh Nine-patch cho phép thay đổi kích thước có thể được sử dụng làm nền hoặc các yêu cầu kích thước hình ảnh khác cho thiết bị mục tiêu. Nine-patch đề cập đến cách bạn có thể thay đổi kích thước hình ảnh: 4 góc không được chia tỷ lệ, 4 cạnh được chia tỷ lệ theo 1 trục và cạnh ở giữa có thể được thu nhỏ thành cả hai trục.

50) Ngôn ngữ nào được Android hỗ trợ để phát triển ứng dụng?

Ngôn ngữ chính được hỗ trợ là ngôn ngữ lập trình Java. Java là ngôn ngữ phổ biến nhất để phát triển ứng dụng, điều này lý tưởng cho các nhà phát triển Android mới học cách nhanh chóng tạo và triển khai các ứng dụng trong môi trường Android.

thú vị bài viết...