• Android中Application的意义及使用方法


    首先,在一个Android程序中,有且只有一个Application对象,在程序启动的时候,首先执行Application的onCreate方法,这是一个Android应用的入口,在开发中,我们常常自定义一个MyApplication用来执行某些操作。由于在一个程序中,有且只有一个Application对象,所以我们可以使用单例设计模式,(这句话是错误的!因为单例模式需要把构造函数私有,但是Application的构造函数是不能私有的,所以不能使用单例模式,其实也没有必要这样做)(http://www.cnblogs.com/oversea201405/p/3749546.html

    Application的使用:

    1.写一个自定义Application类,继承自Application。GoogleMarketApplication.java

    package com.example.rgd.googlemarket.globe;
    
    import android.app.Application;
    import android.content.Context;
    import android.os.Handler;
    
    /**
     * Created by rgd on 2017/2/16.
     */
    
    public class GoogleMarketApplication extends Application {
    
        /**
         * 自定义application, 进行全局初始化
         */
        private static Context context;
        private static Handler handler;
        private static int mainThreadID;
    
    
        @Override
        public void onCreate() {
            super.onCreate();
            context = getApplicationContext();
            handler = new Handler();
            mainThreadID = android.os.Process.myTid();//主线程ID
        }
    
        public static Context getContext() {
            return context;
        }
    
        public static Handler getHandler() {
            return handler;
        }
    
        public static int getMainThreadID() {
            return mainThreadID;
        }
    
    }
    View Code

    2.接下来需要告知系统,当程序启动的时候应该初始化GoogleMarketApplication,而不是默认的APPApplication类。这一步需要在 Android Manifest.xml中配置

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.rgd.googlemarket">
    
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="谷歌电子市场"
            android:name=".globe.GoogleMarketApplication"//此为配置内容
            android:supportsRtl="true"
            android:theme="@style/Theme.AppCompat.Light">
            <activity android:name=".ui.activity.MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
    
    </manifest>
    View Code
    原创作品,转载请注明出处!
  • 相关阅读:
    sklearn学习笔记
    概率生成模型GAN
    机器学习的种类
    如何为React提交pull request
    webpack define Plugin
    Saas应用方法论12条
    React Ref 和 React forwardRef
    几个数组去重的方法
    级数笔记
    信号量及P/V操作
  • 原文地址:https://www.cnblogs.com/yidijimao/p/6418791.html
Copyright © 2020-2023  润新知