在Android下有类似于session的东西,叫做Application, getApplication()用法
16lz
2021-01-23
在Android上有类似于session的东西,叫做Application。
在Android上有类似于session的东西,叫做Application。
1、你可以新建一个类,例如:HelloWordApplication.java 必须extends Application(名字随你取)
在这个类里面设定你要全局的数据变量,例如:private String loginName;
然后生成它的get、set方法。
2、在AndroidManifest.xml文件中配置你的Application类,方法如下:
<application android:icon="@drawable/icon" android:label="@string/app_name" android:name="HelloWordApplication">
<activity >
//略
</activity>
</application>
就是在<application>标签儿中增加android:name="HelloWordApplication"的属性配置。
3、在使用的时候:
HelloWordApplicationapplication = (HelloWordApplication)getApplication();
application.setLoginName("百度");
则就将"百度"保存到了Application里,其他地方要用的时候,application.getLoginName();就可以了。
android getApplication()使用
Java代码- packagecom.hyzing;
- importandroid.app.Application;
- publicclassMySystemAppcationextendsApplication{
- privateintcurIndex;
- publicintgetCurIndex(){
- returncurIndex;
- }
- publicvoidsetCurIndex(intcurIndex){
- this.curIndex=curIndex;
- }
- @Override
- publicvoidonCreate(){
- super.onCreate();
- }
- @Override
- publicvoidonTerminate(){
- super.onTerminate();
- }
- }
- packagecom.hyzing;
- importandroid.app.Activity;
- importandroid.content.Intent;
- importandroid.os.Bundle;
- importandroid.util.Log;
- publicclassSystemtestActivityextendsActivity{
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- //setContentView(R.layout.main);
- MySystemAppcationapplication=(MySystemAppcation)this
- .getApplication();
- System.out.println("++++++++++++++"+application);
- Log.i("data","==============="+application.getCurIndex());
- application.setCurIndex(5);
- Intentintent=newIntent();
- Bundlebundle=newBundle();
- bundle.putString("checkIn","0");
- bundle.putBoolean("managerUser",true);
- intent.putExtras(bundle);
- intent.setClass(<spanstyle="color:#ff0000;">SystemtestActivity.this</span>,PrintActivity.class);
- startActivity(intent);
- }
- }
- packagecom.hyzing;
- importandroid.app.Activity;
- importandroid.content.Intent;
- importandroid.os.Bundle;
- importandroid.util.Log;
- publicclassPrintActivityextendsActivity{
- @Override
- protectedvoidonCreate(BundlesavedInstanceState){
- <spanstyle="color:#ff0000;">super.onCreate(savedInstanceState);</span>
- MySystemAppcationapplication=(MySystemAppcation)this
- .getApplication();
- Log.i("data",""+application.getCurIndex());
- application.setCurIndex(6);
- Intentintent=newIntent();
- Bundlebundle=newBundle();
- bundle.putString("checkIn","0");
- bundle.putBoolean("managerUser",true);
- intent.putExtras(bundle);
- intent.setClass(PrintActivity.this,PrintAgainActivity.class);
- startActivity(intent);
- }
- }
- packagecom.hyzing;
- importandroid.app.Activity;
- importandroid.os.Bundle;
- importandroid.util.Log;
- publicclassPrintAgainActivityextendsActivity{
- @Override
- protectedvoidonCreate(BundlesavedInstanceState){
- <spanstyle="color:#ff0000;">super.onCreate(savedInstanceState);</span>
- finalMySystemAppcationapplication=(MySystemAppcation)this
- .getApplication();
- Log.i("data",""+application.getCurIndex());
- }
- }
- <?xmlversion="1.0"encoding="utf-8"?>
- <manifestxmlns:android="http://schemas.android.com/apk/res/android"
- package="com.hyzing"
- android:versionCode="1"
- android:versionName="1.0">
- <uses-sdkandroid:minSdkVersion="15"/>
- <applicationandroid:name=".MySystemAppcation"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name">
- <activity
- android:name=".SystemtestActivity"
- android:label="@string/app_name">
- <intent-filter>
- <actionandroid:name="android.intent.action.MAIN"/>
- <categoryandroid:name="android.intent.category.LAUNCHER"/>
- </intent-filter>
- </activity>
- <activity
- android:name=".PrintActivity"
- android:label="@string/app_name">
- </activity>
- <activity
- android:name=".PrintAgainActivity"
- android:label="@string/app_name">
- </activity>
- </application>
- </manifest>
更多相关文章
- 实现TextView的垂直滚动以及通过代码设置TextView滚动无法显示滚
- Android Studio使用XML样式在JAVA代码中的使用(使用java代码调节x
- Android实现代码画虚线边框背景效果
- 一行代码搞定三级缓存
- Android代码混淆-添加了Gson遇到的问题
- Android实现自定义dialog的代码
- java代码控制layout_Margin参数
- Android 的 dex2jar 和 jd-gui 反编译 apk 源代码
- Android Menu详解及示例代码