Assignment Help logo
Trò Chuyện Trực Tuyến

Loading...

Score %0 (0 correct0 incorrect20 unanswered)

Câu 1. Để thêm tính năng, thành phần và quyền vào ứng dụng Android của bạn, tệp nào cần phải chỉnh sửa?

  • AndroidManifest.xml
  • Components.xml
  • AppManifest.xml
  • ComponentManifest.xml

Câu 2. Thuộc tính XML nào nên được sử dụng để làm cho một Image View trở nên có thể truy cập?

  • android:talkBack
  • android:labelFor
  • android:hint
  • android:contentDescription

Câu 3. Bạn khởi chạy ứng dụng của mình, và khi bạn điều hướng đến một màn hình mới nó bị crash, Hành động nào SẼ KHÔNG giúp bạn chẩn đoán vấn đề?

  • Đặt các điểm dừng và sau đó bước qua mã theo dòng.
  • Sử dụng các công cụ lập hồ sơ trong Android Studio để phát hiện các bất thường trong việc sử dụng CPU và mạng.
  • Thêm một cuộc gọi Thread.sleep() trước khi bạn bắt đầu hoạt động mới.
  • Kiểm tra các logs trong Logcat.

Câu 4. Tại sao thông báo đẩy có thể ngừng hoạt động?

  • tất cả các câu trả lời này
  • Mã token của thiết bị không được gửi đến nhà cung cấp thông báo đẩy một cách chính xác.
  • Dịch vụ Google Play không được cài đặt trên thiết bị/máy ảo.
  • Tối ưu hóa pin đang được bật trên thiết bị.

Câu 5. Tập hợp lớp thành phần nào là cần thiết để triển khai một RecyclerView của các mục hiển thị danh sách các tiện ích theo chiều dọc?

  • A
    RecycleView
    RecyclerView.Adapter<T extends BaseAdapter>
    RecyclerView.ViewHolder<T extends BaseViewHolder>
    LinearLayoutManager
  • B
    RecycleView
    RecyclerView.Adapter
    RecyclerView.ViewHolder<T extends BaseViewHolder>
    LinearLayoutManager
  • C
    RecycleView
    RecyclerView.Adapter
    RecyclerView.ViewHolder
    LinearLayoutManager
  • D
    RecycleView
    RecyclerView.Adapter<VH extends ViewHolder>
    RecyclerView.ViewHolder
    LinearLayoutManager

Câu 6. Hệ thống Android giết quá trình khi nó cần giải phóng bộ nhớ. Khả năng hệ thống giết một quy trình nhất định phụ thuộc vào trạng thái của quy trình và hoạt động vào thời điểm đó. Kết hợp nào của trạng thái quy trình và hoạt động có thể bị giết nhất định?

  • Quy trình: Trong nền; Hoạt động: Đã dừng
  • Quy trình: Trong nền; Hoạt động: Đã tạm dừng
  • Quy trình: Trong foreground; Hoạt động: Đã bắt đầu
  • Quy trình: Trong foreground; Hoạt động: Đã tạm dừng

Câu 7. Bạn đã tạo một lớp NextActivity phụ thuộc vào một chuỗi chứa một số dữ liệu đi qua trong intent. Đoạn mã nào cho phép bạn khởi chạy hoạt động của mình?

  • A
    Intent(this, NextActivity::class.java).also { intent ->
        startActivity(intent)
    }
  • B
    Intent(this, NextActivity::class.java).apply {
        put(EXTRA_NEXT, "some data")
    }.also { intent ->
        activityStart(intent)
    }
  • C
    Intent(this, NextActivity::class.java).apply {
        putExtra(EXTRA_NEXT, "some data")
    }.also { intent ->
        startActivity(intent)
    }
  • D
    Intent(this, NextActivity::class.java).apply {
        put(EXTRA_NEXT, "some data")
    }.also { intent ->
        activityStart(intent)
    }

Câu 8. Bạn muốn bao gồm các mô-đun về và thiết lập trong dự án của bạn. Các tệp nào phản ánh chính xác việc bao gồm chúng?

  • in build.gradle:include ':app',':about' ':settings'
  • in settings.gradle:include ':app',':about' ':settings'
  • in settings.gradle:include ':about',':settings'
  • in gradle.properties:include ':app',':about' ':settings'

Câu 9. Lợi ích của việc sử dụng chú thích @VisibleForTesting là gì?

  • để chỉ ra rằng một lớp, phương thức hoặc trường có khả năng hiển thị của nó được giảm để làm mã có thể kiểm tra
  • để chỉ ra rằng một lớp, phương thức hoặc trường chỉ hiển thị trong mã kiểm tra
  • để chỉ ra rằng một lớp, phương thức hoặc trường có khả năng hiển thị của nó được tăng để làm mã ít có thể kiểm tra hơn
  • để ném lỗi run-time nếu một lớp, phương thức hoặc trường có chú thích này được truy cập không đúng cách

Câu 10. Làm thế nào để chỉ định trong tệp build.gradle của bạn rằng ứng dụng của bạn yêu cầu ít nhất API cấp 21 để chạy, nhưng nó có thể được kiểm tra trên API cấp 28?

  • A
      defaultConfig {
        ...
        minApiVersion 21
        targetApiVersion 28
      }
  • B
      defaultConfig {
        ...
        targetSdkVersion 21
        testSdkVersion 28
      }
  • C
      defaultConfig {
        ...
        minSdkVersion 21
        testApiVersion 28
      }
  • D
      defaultConfig {
        ...
      minSdkVersion 21
        targetSdkVersion 28
      }

Câu 11. Khi nào phương thức onActivityResult() của một hoạt động sẽ được gọi?

  • khi gọi finish() trong hoạt động cha
  • khi đặt một ứng dụng vào nền bằng cách chuyển sang một ứng dụng khác
  • Khi onStop() được gọi trong hoạt động đích
  • khi gọi finish() trong hoạt động đích

Tham khảo

Câu 12. Bạn cần xóa một Sự kiện dựa trên ID từ API của bạn. Đoạn mã nào xác định yêu cầu đó trong Retrofit?

  • @DELETE("events) fun deleteEvent(@Path("id") id: Long): Call<Unit>
  • @DELETE("events/{id}") fun deleteEvent(@Path("id") id: Long): Call<Unit>
  • @REMOVE("events/{id}") fun deleteEvent(@Path("id") id: Long): Call<Unit>
  • @DELETE("events/{id}") fun deleteEvent(@Path("id") id: Long): Call<Unit>

Câu 13. Khi nào bạn sẽ sử dụng một hương vị sản phẩm trong cài đặt xây dựng của bạn?

  • khi bạn cần có các chuỗi ứng dụng có mặt trong nhiều ngôn ngữ
  • khi bạn phải cung cấp các phiên bản khác nhau của ứng dụng của bạn dựa trên kích thước thiết bị vật lý
  • khi bạn muốn cung cấp các phiên bản khác nhau của ứng dụng của bạn dựa trên mật độ màn hình thiết bị
  • Khi bạn muốn cung cấp một phiên bản khác của ứng dụng của bạn với cấu hình và tài nguyên tùy chỉnh

Câu 14. Cho đoạn mã sau đây, làm thế nào để bạn truy cập vào một TextView có ID là text_home nằm trong tệp giao diện của một lớp Fragment?

    private lateinit var textView: TextView
    override fun onCreateView(...): View? {
        val root = inflator.inflator(R>layout.fragment_home, container, false)
        textView = ??
        return root
    }
  • root.getById(R.id.text_home)
  • findViewByID(R.id.text_home)
  • root.findViewById(R.id.text_home)
  • root.find(R.id.text_home)

Câu 15. Tại sao bạn sử dụng AndroidJUnitRunner khi chạy các bài kiểm tra UI?

Chú ý: AndroidJUnitRunner cho phép chúng ta chạy các bài kiểm tra kiểu JUnit3/4 trên Thiết bị Android

  • Bộ chạy kiểm tra giúp tải gói kiểm tra của bạn và ứng dụng được kiểm tra lên một thiết bị hoặc máy ảo, chạy kiểm tra và báo cáo kết quả.
  • Bộ chạy kiểm tra tạo ra các ảnh chụp màn hình của mỗi màn hình được hiển thị trong khi các kiểm tra được thực hiện.
  • Bộ chạy kiểm tra giúp song song hóa các lớp kiểm tra bằng cách cung cấp cho mỗi lớp kiểm tra.
  • Bộ chạy kiểm tra giúp tương tác với các phần tử hiển thị trên thiết bị, bất kể hoạt động hoặc đoạn mã fragment nào đang được tập trung.

Câu 16. Điều gì cho phép bạn khôi phục trạng thái của người dùng một cách đúng đắn khi một hoạt động được khởi động lại?

  • phương thức onSaveInstance()
  • tất cả các câu trả lời này
  • lưu trữ liên tục
  • các đối tượng ViewModel

Tham khảo

Câu 17. Nếu luồng chính bị chặn quá lâu, hệ thống sẽ hiển thị hộp thoại nào?

  • Thread Not Responding
  • Application Paused
  • Application Not Responding
  • Application Blocked

Câu 18. Làm thế nào để bạn lấy giá trị của email người dùng từ SharedPreferences đồng thời đảm bảo rằng giá trị trả về không phải là null?

  • getPreferances(this).getString(Email,"")
  • getDefaultSharedPrefarances(this).getString(EMAIL,null)
  • getDefaultSharedPreferances(this).getString(EMAIL,"")
  • getPreferances(this).getString(EMAIL,null)

Giải thích: "Trong Phương thức "getDefaultSharedPrefarances(this).getString()" Tham số thứ hai được truyền để nó có thể được trả về, trong trường hợp khóa không tồn tại. Vì vậy, chúng ta cần truyền một chuỗi rỗng để được trả về trong trường hợp khóa không tồn tại."

Câu 19. Tại sao việc định nghĩa kích thước bằng pixel trên Android có vấn đề?

  • Mặc dù mật độ điểm ảnh màn hình thay đổi, điều này không ảnh hưởng đến việc sử dụng pixel để xác định kích thước.
  • Các thiết bị lớn luôn có nhiều điểm ảnh, vì vậy các yếu tố giao diện người dùng của bạn sẽ bị ảnh hưởng nếu bạn định nghĩa chúng bằng pixel.
  • Cùng một số lượng pixel có thể tương ứng với các kích thước vật lý khác nhau, ảnh hưởng đến giao diện người dùng của bạn.
  • Các thiết bị khác nhau có các hiểu biết khác nhau về pixel là gì, ảnh hưởng đến giao diện người dùng của bạn.

Tham khảo

Câu 20. Bạn cần lấy danh sách các thiết bị được kết nối với máy tính của bạn với tính năng gỡ lỗi USB được kích hoạt. Lệnh nào sẽ thực hiện bằng Android Debug Bridge?

  • list devices
  • adb devices
  • list avd
  • dir devices