Android项目实战手机安全卫士(01)

目录

  • 项目结构图
  • 源代码
  • 运行结果

项目结构图

V0100_01

源代码

SplashActivity.java

package com.coderdream.mobilesafe.activity;



import android.app.Activity;

import android.content.pm.PackageInfo;

import android.content.pm.PackageManager;

import android.os.Bundle;

import android.view.Window;

import android.view.WindowManager;

import android.widget.TextView;



import com.coderdream.mobilesafe.R;



public class SplashActivity extends Activity {

	private TextView tv_splash_version;



	@Override

	public void onCreate(Bundle savedInstanceState) {

		super.onCreate(savedInstanceState);

		// 设置为无标题栏

		requestWindowFeature(Window.FEATURE_NO_TITLE);

		// 设置为全屏模式

		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

				WindowManager.LayoutParams.FLAG_FULLSCREEN);



		setContentView(R.layout.activity_splash);

		tv_splash_version = (TextView) findViewById(R.id.tv_splash_version);

		tv_splash_version.setText("版本号:" + getVersion());

	}



	/**

	 * <pre>

	 * 获取当前应用程序的版本号。 

	 * 版本号存在于我们的APK中对应的清单文件中(直接解压APK后,即可看到对应的清单文件),

	 * 版本号是manifest节点中的android:versionName="1.0" 

	 * 当一个应用程序被装到手机后 ,该apk拷贝到手机的data/app目录下(也就是系统中),

	 * 如图6。所以想得到版本号,我们需要拿到与系统相关的服务,就可以得到apk中的信息了

	 * 

	 * </pre>

	 * 

	 * @return

	 */

	private String getVersion() {

		// 得到系统的包管理器。已经得到了apk的面向对象的包装

		PackageManager pm = this.getPackageManager();

		try {

			// 参数一:当前应用程序的包名 参数二:可选的附加消息,这里我们用不到 ,可以定义为0

			PackageInfo info = pm.getPackageInfo(getPackageName(), 0);

			// 返回当前应用程序的版本号

			return info.versionName;

		} catch (Exception e) {// 包名未找到的异常,理论上, 该异常不可能会发生

			e.printStackTrace();

			return "";

		}

	}

}

 

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.coderdream.mobilesafe"

    android:versionCode="1"

    android:versionName="1.0" >



    <uses-sdk

        android:minSdkVersion="8"

        android:targetSdkVersion="17" />



    <application

        android:allowBackup="true"

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme" >

        <activity

            android:name="com.coderdream.mobilesafe.activity.SplashActivity"

            android:label="@string/app_name" >

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />



                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

    </application>



</manifest>

运行结果

V0100_02

你可能感兴趣的:(android)