Cách tốt nhất để thấy sự khác biệt sẽ được nhìn thấy nó là lớp phân cấp
Activity
java.lang.Object
↳ android.content.Context
↳ android.content.ContextWrapper
↳ android.view.ContextThemeWrapper
↳ android.app.Activity
Và Application
java.lang.Object
↳ android.content.Context
↳ android.content.ContextWrapper
↳ android.app.Application
ứng dụng là những gì sống đến quá trình ứng dụng Android của bạn sẽ bị chết. Bạn có thể sử dụng nó để lưu trữ dữ liệu ứng dụng cụ thể (miễn là ứng dụng của bạn còn sống) có thể được sử dụng trên các hoạt động khác nhau. Lưu ý Tôi không nói bạn nên ... Tùy chọn chia sẻ có thể là cách thích hợp khác để đi tùy thuộc vào usecase của bạn. Ngoài ra chỉ để được rõ ràng bạn không thể sử dụng ứng dụng của bạn để khởi động ứng dụng của bạn không giống như hoạt động phóng bạn cung cấp trong tập tin manifest của bạn.
Bạn có thể sử dụng lớp ứng dụng tùy chỉnh của riêng bạn như sau
<application
android:name="icom.osfg.test.app.AppController"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/MyTheme" >
<!-- all the activities goes here -->
</application>
nơi
AppController extends Application
Nguồn
2015-07-18 11:59:59
Tôi không có nghĩa là mang tính thông thái nhưng ý của bạn là "Sẽ không thể xây dựng một ứng dụng không có hoạt động" ?. Tôi chỉ muốn hoàn toàn rõ ràng về điều này. – jcrowson
Các hoạt động tốt là khối ứng dụng xây dựng. Giống như các trang cho một ứng dụng web. Bất kỳ ứng dụng nào cũng sẽ có ít nhất một (mặc dù bạn có thể có một Widget mà không có một ứng dụng mà tôi cho là). Ứng dụng của bạn sẽ cần một Activity entry point. –
Vì vậy, bạn có thể bắt đầu các lớp mở rộng ứng dụng, tương tự như bắt đầu Hoạt động sử dụng mục đích? – jcrowson