編輯:Android開發實例
需求描述:有些時候,我們需要我們的程序在開機後能自動運行,在系統即將關閉時,能寫入一些記錄到指定的文件裡。
一、開機廣播監聽:
Android系統啟動完成後會發出啟動完成廣播(android.intent.action.BOOT_COMPLETED),所有注冊了接收啟動完成廣播的接收器(BroadcastReceiver)都會收到此廣播。
1、在AndroidManifest.xml文件裡添加授予應用程序訪問系統開機事件的權限
- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
2、編寫系統發出的開機啟動完成廣播的接收器。自定類繼承BroadcastReceiver類,代碼如下:
- package com.android.test;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.util.Log;
- /**
- * 類名:BootBroadcastReceiver
- * 功能描述:啟動時系統發出的廣播的接收器
- * #<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
- * @author android_ls
- */
- public class BootBroadcastReceiver extends BroadcastReceiver {
- private static final String TAG = "BootBroadcastReceiver";
- private static final String ACTION_BOOT = "android.intent.action.BOOT_COMPLETED";
- @Override
- public void onReceive(Context context, Intent intent) {
- Log.i(TAG, "Boot this system , BootBroadcastReceiver onReceive()");
- if (intent.getAction().equals(ACTION_BOOT)) {
- Log.i(TAG, "BootBroadcastReceiver onReceive(), Do thing!");
- }
- }
- }
3、在AndroidManifest.xml文件裡注冊廣播接收器
- <receiver android:name="com.android.test.BootBroadcastReceiver" >
- <intent-filter >
- <action android:name="android.intent.action.BOOT_COMPLETED" />
- <category android:name="android.intent.category.HOME" />
- </intent-filter>
- </receiver>
二、關機廣播監聽:
Android系統提供了與開機廣播對應的關機廣播,在系統即將關閉時發出此廣播。
1、編寫在系統即將關閉時發出的廣播的接收器。自定類繼承BroadcastReceiver類,代碼如下:
- package com.android.test;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.util.Log;
- /**
- * 類名:ShutdownBroadcastReceiver
- * 功能描述:在系統即將關閉時發出的廣播的接收器
- * @author android_ls
- */
- public class ShutdownBroadcastReceiver extends BroadcastReceiver {
- private static final String TAG = "ShutdownBroadcastReceiver";
- private static final String ACTION_SHUTDOWN = "android.intent.action.ACTION_SHUTDOWN";
- @Override
- public void onReceive(Context context, Intent intent) {
- Log.i(TAG, "Shut down this system, ShutdownBroadcastReceiver onReceive()");
- if (intent.getAction().equals(ACTION_SHUTDOWN)) {
- Log.i(TAG, "ShutdownBroadcastReceiver onReceive(), Do thing!");
- }
- }
- }
2、在AndroidManifest.xml文件裡注冊廣播接收器
- <receiver android:name="com.android.test.ShutdownBroadcastReceiver" >
- <intent-filter >
- <action android:name="android.intent.action.ACTION_SHUTDOWN" />
- <category android:name="android.intent.category.HOME" />
- </intent-filter>
- </receiver>
注:開機關機操作有兩種方式:1、重新啟動,關閉後立刻又開機。這種情況下,開機啟動完成和在系統即將關閉時發出的廣播,都可以接收到。2、關機,這時的在系統即將關閉時發出的廣播接收不到(我測試時遇到的情況)。開機,開機啟動完成發出的廣播時可以接收到的。
轉自:http://blog.csdn.net/android_ls/article/details/8605915
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
Android原生控件只有橫向進度條一種,而且沒法變換樣式,比如原生rom的樣子 很丑是吧,當偉大的產品設計要求更換前背景,甚至縱向,甚至圓弧狀的,咋辦,比如:
1、xml代碼:代碼如下:<?xml version=1.0 encoding=utf-8?> <LinearLayout xmln
這篇文章主要為大家詳細介紹了Android系統模擬位置的使用方法,具有參考價值,感興趣的小伙伴們可以參考一下 本文為大家分享了Andro