2011-11-13 17 views
15

Tôi mới phát triển Android Tôi đã thấy rất nhiều hướng dẫn khi họ chỉ có android.intent.action.MAIN về cơ bản là hoạt động bắt đầu của ứng dụng.Nhiều android.intent.action.MAIN trong tệp xml mainfest

Nhưng, trong bản trình diễn ứng dụng android, tôi đã thấy nhiều câu lệnh android.intent.action.MAIN trong mainfest.xml. Bất cứ ai có thể giải thích tại sao số mainfest.xml có nhiều câu hỏi android.intent.action.MAIN?

Và, trong trường hợp nào chúng tôi có nghĩa vụ phải có nhiều MAIN s trong manifest.xml?

Trả lời

20

Chúng là các điểm nhập khác nhau vào chương trình. Ví dụ, tôi vừa tạo ra hai hoạt động, cả hai đều có bộ lọc ý định điển hình

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

Nó chỉ ra rằng màn hình launcher của tôi bây giờ có hai biểu tượng khác nhau cho cùng một chương trình, một cho từng hoạt động khác nhau. Điều này có ý nghĩa, vì bộ lọc ý định CHÍNH/LAUNCHER về cơ bản cho android biết rằng hoạt động là hoạt động bắt đầu của ứng dụng. Không có gì trong mô hình bộ lọc ý định của Android buộc mỗi ứng dụng phải có một và chỉ một hoạt động bắt đầu.

+7

Tôi nghĩ chỉ có bộ lọc ý định 'CHÍNH 'là bộ lọc cho phép hoạt động đó là hoạt động bắt đầu của ứng dụng. Nếu bạn bỏ qua 'LAUNCHER', sẽ không có biểu tượng nào được tạo. Ít nhất đây là những gì tôi quan sát trên thiết bị thử nghiệm của tôi. – chakrit

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