Android Application
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Application相关的知识,希望对你有一定的参考价值。
Android Application类简介
每次程序运行时,应用程序Application类都保持实例化状态,通过扩展Application类可以完成:
1、共享数据,在应用程序组件之间传递对象
2、对系统广播做出响应(如低内存)
3、管理和维护多个应用程序组件使用的资源
每个应用程序都会生成一个唯一的Application,由系统生成。
如果没有重写,那么程序会使用android默认的Application类
扩展自己的Application
1、继承
public class MyApplication extends Application
2、将MyApplication 单例化
1 import android.app.Application; 2 import android.util.Log; 3 4 public class MyApplication extends Application{ 5 //将一些公共数据放在这里 6 public User user = new User(); 7 8 //当应用程序被系统启动后,会调用onCreate() 9 @Override 10 public void onCreate() { 11 super.onCreate(); 12 Log.e("MyApplication", "系统调用了我们的MyApp"); 13 } 14 //用户 15 class User{ 16 17 } 18 }
3、配置
1 <application 2 android:name="com.test.lesson3_application.config.MyApplication" 3 android:allowBackup="true" 4 android:icon="@drawable/ic_launcher" 5 android:label="@string/app_name" 6 android:theme="@style/AppTheme" > 7 <activity 8 android:name=".MainActivity" 9 android:label="@string/app_name" > 10 <intent-filter> 11 <action android:name="android.intent.action.MAIN" /> 12 13 <category android:name="android.intent.category.LAUNCHER" /> 14 </intent-filter> 15 </activity> 16 </application>
MainActivity
1 import com.test.lesson3_application.config.MyApplication; 2 3 import android.app.Activity; 4 import android.os.Bundle; 5 import android.util.Log; 6 7 public class MainActivity extends Activity { 8 9 @Override 10 protected void onCreate(Bundle savedInstanceState) { 11 super.onCreate(savedInstanceState); 12 setContentView(R.layout.activity_main); 13 14 Log.e("MainActivity", "MainActivity onCreate"); 15 MyApplication myapp = (MyApplication) getApplication(); 16 17 if(myapp.user == null){ 18 Log.e("MainActivity", "用户还没有登录"); 19 }else { 20 Log.e("MainActivity", "已经有用户"); 21 } 22 23 } 24 25 }
可见MyApplication先打印出来
应用程序的生命周期
onCreate:做一些初始化操作。创建应用程序时,系统会调用onCreate
onLowMemory:在系统处于资源匮乏状态时,具备良好行为的应用可以释放额外额内存
onTrimMemory:API4.0后引入,系统会根据不同的内存状态类回调
onConfigurationChanged:在配置改变时,进行处理
以上是关于Android Application的主要内容,如果未能解决你的问题,请参考以下文章
add application window with unknown token XXX Unable to add window;is your activity is running?(代码片段
add application window with unknown token XXX Unable to add window;is your activity is running?(代码片段
C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段