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

相關文章
相關標籤/搜索