2014-04-07 14 views
9

Tôi đang sửa đổi mã nguồn AOSP vì ứng dụng của tôi cần chạy trong môi trường kiosk.Làm cách nào để đặt trình chạy mặc định trong bản dựng AOSP?

Tôi muốn Android khởi động trực tiếp vào ứng dụng. Tôi đã loại trừ launcher2 từ generic_no_telephony.mk và thêm ứng dụng tại đó. Giờ đây, Android nhắc tôi mọi lúc chọn trình khởi chạy mặc định.

Hai lựa chọn có sẵn trên các cửa sổ pop-up:

  1. Home Sample
  2. Ứng dụng của tôi.

Làm cách nào để loại trừ Trình khởi chạy mẫu trang chủ Android? Hoặc có cách nào khác để đặt trình khởi chạy mặc định trong bản dựng AOSP không?

Trả lời

12

Thay vì sửa đổi AOSP tạo tệp (điều này gây khó chịu vì sau đó bạn cần theo dõi các thay đổi của mình), việc thêm dòng LOCAL_OVERRIDES_PACKAGES vào tệp của ứng dụng sẽ dễ dàng hơn.

Ví dụ:

LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3 

thêm vào tập tin Android.mk của bạn sẽ đảm bảo rằng những gói không được thêm vào bất kỳ xây dựng nơi gói này được thêm vào.

Sau đó, bạn nên làm một

make installclean 

và sau đó bắt đầu xây dựng của bạn giống như cách bạn luôn luôn đảm xây dựng của bạn. Việc thực hiện installclean là quan trọng để loại bỏ các gói bị bỏ lại phía sau bởi bản dựng trước đó.

Tôi cũng chỉ tìm thấy một câu trả lời tốt đẹp để làm thế nào để làm điều này trong một câu hỏi khác, xem: How would I make an embedded Android OS with just one app?

+0

tôi đang cố gắng nó bây giờ, hy vọng nó hoạt động =)! – user3506467

+0

Cảm ơn bạn rất nhiều, đã làm việc. – user3506467

+0

Tôi đã thêm LOCAL_OVERRIDES_PACKAGES: = Launcher2 Launcher3. Ứng dụng của tôi đã được cài đặt. Nhưng nó luôn luôn cài đặt Launcher2. Sau khi khởi động, tôi nhận được lời nhắc chọn trình khởi chạy của mình. Khi tôi xóa Launcher2 trong generic_no_telephony.mk, Launcher2 sẽ không được cài đặt, nhưng tôi nhận được lời nhắc chọn giữa trình khởi chạy và mẫu nhà của mình – maggocnx

0

Câu trả lời trên là chính xác. LOCAL_OVERRIDES_PACKAGES hoạt động. Nhưng để giải quyết một trong các ý kiến; Tôi phải làm LOCAL_OVERRIDES_PACKAGES: = Nhà Launcher2 Launcher3

Trang chủ là ứng dụng Home mẫu làm Trình khởi chạy nếu Lancher2 cũng không khả dụng.

Chỉ sau khi loại bỏ 3 bệ phóng cổ phiếu này; là tôi có thể thấy khởi chạy trình khởi chạy tùy chỉnh của mình theo mặc định mà không có bất kỳ hộp thoại nào yêu cầu người dùng chọn.

(OS thử nghiệm của tôi là Android N, YMMV)

Các vấn đề liên quan