當前位置:首頁 » 安卓系統 » android開啟服務

android開啟服務

發布時間: 2022-04-29 02:17:41

⑴ android怎麼實現開機自動啟動Service或app

Android手機在啟動的過程中會觸發一個Standard Broadcast Action,名字叫android.intent.action.BOOT_COMPLETED。
在這里我們可以通過構建一個廣播接收者來接收這個這個action
(1).
public class TextBroadcastReceiver extends BroadcastReceiver {
//重寫onReceive方法
@Override
public void onReceive(Context context, Intent intent) {
//後邊的XXX.class就是要啟動的服務
Intent service = new Intent(context,XXXclass);
context.startService(service);
Log.v("TAG", "開機自動服務自動啟動.....");
//啟動應用,參數為需要自動啟動的應用的包名
Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);

context.startActivity(intent );
}

}
(2):配置xml文件,在receiver接收這種添加intent-filter配置
<receiver android:name="TextBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</receiver>
(3):添加許可權 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

⑵ android如何實現開機自動啟動Service或app

import
android.content.BroadcastReceiver;
import
android.content.Context;
import
android.content.Intent;
import
android.util.Log;
public
class
BootBroadcastReceiver
extends
BroadcastReceiver
{
//重寫onReceive方法@Overridepublic
void
onReceive(Context
context,
Intent
intent)
{
//後邊的XXX.class就是要啟動的服務
Intent
service
=
new
Intent(context,XXXclass);
context.startService(service);
Log.v("TAG",
"開機自動服務自動啟動.....");
//啟動應用,參數為需要自動啟動的應用的包名

⑶ 列出Android設備所有啟動的服務 判斷某個服務是否開啟

今天給大家的小例子是列出Android設備中所有啟動的服務,及判斷某個服務是否開啟,具體步驟如下了:
第一步:新建一個Android工程,命名為RunningService。
第二步:修改RunningService.java代碼如下:
package com.tutor.runningservice;
import java.util.List;
import android.app.Activity;
import android.app.ActivityManager;
import android.os.Bundle;
import android.widget.TextView;
public class RunningService extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
TextView mTextView = new TextView(this);
ActivityManager mActivityManager =
(ActivityManager)getSystemService(ACTIVITY_SERVICE);

List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);
//我要判斷的服務名字,我在launcher2里加了一個音樂服務
final String musicClassName = "com.android.launcher2.MusicService";

boolean b = MusicServiceIsStart(mServiceList, musicClassName);

mTextView.setText("你要判斷的服務狀態為: " +b+"/n" + getServiceClassName(mServiceList));
setContentView(mTextView);
}
//通過Service的類名來判斷是否啟動某個服務
private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){

for(int i = 0; i < mServiceList.size(); i ++){
if(className.equals(mServiceList.get(i).service.getClassName())){
return true;
}
}
return false;
}
//獲取所有啟動的服務的類名
private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){
String res = "";
for(int i = 0; i < mServiceList.size(); i ++){
res+=mServiceList.get(i).service.getClassName()+ " /n";
}

return res;
}
}
第三步:運行上述工程,查看效果!

⑷ android 怎麼開機啟動service

android service 開機啟動後被被自動關閉掉原因: Android 系統對於內存管理有自己的一套方法,為了保障系統有序穩定的運信,系統內部會自動分配,控製程序的內存使用。當系統覺得當前的資源非常有限的時候,為了保 證一些優先順序高的程序能運行,就會殺掉一些他認為不重要的程序或者服務來釋放內存。這樣就能保證真正對用戶有用的程序仍然再運行。如果你的 Service 碰上了這種情況,多半會先被殺掉。但如果你增加 Service 的優先順序就能讓他多留一會,我們可以用 setForeground(true) 來設置 Service 的優先順序。 默認啟動的 Service 是被標記為 background,當前運行的 Activity 一般被標記為 foreground,也就是說你給 Service 設置了 foreground 那麼他就和正在運行的 Activity 類似優先順序得到了一定的提高。當讓這並不能保證你得 Service 永遠不被殺掉,只是提高了他的優先順序。

安卓手機如何開啟GPS定位服務

1、首先打開自己的手機,然後找到設置圖標,點擊進入。


⑹ android7.0 怎樣啟動service

安卓7.0開啟夜間模式介紹: Android 7.0正式版已經發布,然而此前在開發者預覽版中的一些功能遭到了閹割,最終沒有在正式版中加入,其中之一便是夜間模式。而實際上,安卓7.0正式版中是有這個功能的,只不過被谷歌隱藏了而已。 Reddit網站上的帖子表示,安卓7.0正式版隱藏了夜間模式的功能,可通過一些ADB命令開啟,但普通消費者並不懂怎樣使用ADB命令,現在有開發者專門開發了一個開啟安卓7.0隱藏夜間模式的APP,放在谷歌商店供下載。 用戶只需要安裝這款APP,然後點擊打開夜間模式功能按鈕,之後去快速啟動欄按住設置圖標,進入系統調諧器界面開啟夜間模式功能即可。 值得一提的是,通過安卓6.0.1升級到Android 7.0牛軋糖的用戶無法使用以上方法打開夜間模式,只有從以前的開發者預覽版升級到Android 7.0牛軋糖正式版的手機才可以。 既然夜間模式的代碼仍然在安卓7.0正式版中,我們估計谷歌會在未來合適的時候正式放開這個功能。

⑺ 怎麼查看Android設備中的啟動服務

今天給大家的小例子是列出Android設備中所有啟動的服務,及判斷某個服務是否開啟,具體步驟如下了:
第一步:新建一個Android工程,命名為RunningService。
第二步:修改RunningService.java代碼如下:
package com.tutor.runningservice;
import java.util.List;
import android.app.Activity;
import android.app.ActivityManager;
import android.os.Bundle;
import android.widget.TextView;
public class RunningService extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
TextView mTextView = new TextView(this);
ActivityManager mActivityManager =
(ActivityManager)getSystemService(ACTIVITY_SERVICE);

List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);
//我要判斷的服務名字,我在launcher2里加了一個音樂服務
final String musicClassName = "com.android.launcher2.MusicService";

boolean b = MusicServiceIsStart(mServiceList, musicClassName);

mTextView.setText("你要判斷的服務狀態為: " +b+"/n" + getServiceClassName(mServiceList));
setContentView(mTextView);
}
//通過Service的類名來判斷是否啟動某個服務
private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){

for(int i = 0; i < mServiceList.size(); i ++){
if(className.equals(mServiceList.get(i).service.getClassName())){
return true;
}
}
return false;
}
//獲取所有啟動的服務的類名
private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){
String res = "";
for(int i = 0; i < mServiceList.size(); i ++){
res+=mServiceList.get(i).service.getClassName()+ " /n";
}

return res;
}
}
第三步:運行上述工程,查看效果!

⑻ android 怎樣啟動後台服務

後台服務就是後台運行的意思,只要單擊任務欄上代表這程序的按鈕,原來後台運行的程序就會到前台來,前台運行的程序就會到後台去了。如下圖所示。

Windows 7可以打開幾個窗口,每個任務分配一個窗口,各個窗口可以重疊、排開、放大、縮小、移動等,可以方便地在各打開的窗口間切換,各個打開的應用程序共享電腦資源,多任務環境對用戶是透明的,每個任務都可以按前台、後台和獨佔三種方式進行。

多任務並存時,打開一個窗口後,在任務欄的空白處單擊滑鼠右鍵,然後在彈出的快捷菜單中可以選擇層疊、橫向平鋪或縱向平鋪等。

當Windows 7打開了幾個窗口時,實際上只有一個是你可以對它進行操作的窗口,叫做當前活動窗口。在所有打開窗口的最前面,標題欄底色為深色的窗口為當前活動窗口。單擊任務欄上的按鈕,或按下換檔鍵加製表鍵,即可以把這個窗口切換為當前活動窗口。

任何已經打開,不在前台運行的窗口,在後台仍然是活動的,佔用內存和中央處理器等系統資源,所以,從這個意義上來說,長時間不用的窗口要及時關閉,方法是單擊應用程序窗口標題欄右上角的關閉按鈕。

;一個應用程序,無論是否最小化,在任務欄上都會以按鈕的形式顯示出來,當前活動窗口的應用程序的按鈕呈凹陷形狀,其餘呈隆起形狀。因此,判斷一個窗口是否關閉,只要看其是否還在任務欄中即可。

⑼ Android中怎麼啟動關閉Service及功能解釋

啟動:
//首先注冊服務
<service
android:name="com.wangdeyu.service.MusicService"
android:exported="false" >
<intent-filter>
<action android:name="com.abc" />
</intent-filter>
</service>

//啟動服務
Intent service=new Intent(" com.abc");
startService(service);
//Service生命周期
①onCreate() 創建Service
②onStart(Intent intent, int startId) 啟動Service
③onDestroy() 銷毀Service
//關閉服務
stopService(service);

Service的生命周期方法比Activity少一些,只有onCreate, onStart, onDestroy
我們有兩種方式啟動一個Service,他們對Service生命周期的影響是不一樣的。
1 通過startService,就是上面這種
Service會經歷 onCreate --> onStart
stopService的時候直接onDestroy
如果是 調用者 直接退出而沒有調用stopService的話,Service會一直在後台運行。
下次調用者再起來仍然可以stopService。
2 通過bindService
Service只會運行onCreate, 這個時候 調用者和Service綁定在一起
調用者退出了,Srevice就會調用onUnbind-->onDestroyed
所謂綁定在一起就共存亡了。
注意:Service的onCreate的方法只會被調用一次,
就是你無論多少次的startService又 bindService,Service只被創建一次。
如果先是bind了,那麼start的時候就直接運行Service的onStart方法,
如果先是start,那麼bind的時候就直接運行onBind方法。如果你先bind上了,就stop不掉了,
只能先UnbindService, 再StopService,所以是先start還是先bind行為是有區別的。
Android中的服務和windows中的服務是類似的東西,服務一般沒有用戶操作界面,它運行於系統中不容易被用戶發覺,可以使用它開發如監控之類的程序。
服務不能自己運行,需要通過調用Context.startService()或Context.bindService()方法啟動服務。
這兩個方法都可以啟動Service,但是它們的使用場合有所不同。使用startService()方法啟用服務,調用者與服務之間沒有關連,
即使調用者退出了,服務仍然運行。使用bindService()方法啟用服務,調用者與服務綁定在了一起,調用者一旦退出,服務也就終止,大有「不求同時生,必須同時死」的特點。
如果打算採用Context.startService()方法啟動服務,在服務未被創建時,系統會先調用服務的onCreate()方法,
接著調用onStart()方法。如果調用startService()方法前服務已經被創建,多次調用startService()方法並不會導致多次創建服務,
但會導致多次調用onStart()方法。採用startService()方法啟動的服務,只能調用Context.stopService()方法結束服務,服務結束時會調用onDestroy()方法。
如果打算採用Context.bindService()方法啟動服務,在服務未被創建時,系統會先調用服務的onCreate()方法,
接著調用onBind()方法。這個時候調用者和服務綁定在一起,調用者退出了,系統就會先調用服務的onUnbind()方法,
接著調用onDestroy()方法。如果調用bindService()方法前服務已經被綁定,
多次調用bindService()方法並不會導致多次創建服務及綁定(也就是說onCreate()和onBind()方法並不會被多次調用)。
如果調用者希望與正在綁定的服務解除綁定,可以調用unbindService()方法,調用該方法也會導致系統調用服務的onUnbind()-->onDestroy()方法.

⑽ 安卓手機設置中那裡開啟定位服務

一種為移動基站定位,一種為GPS衛星定位。只需開啟對應的服務,並配合導航地圖使用。
設置-通用-位置服務-開啟「使用無線網路」或者「使用GPS衛星」。
注意:GPS定位需在室外空曠之地才能定位,而使用無線網路定位,只需有移動信號的地方就可以。GPS定位時間較長,精度較高(一般3-5M范圍內),無線網路定位時間短,精度較低(一般1KM范圍內)

熱點內容
廣東人社賬號密碼多少 發布:2025-05-10 03:43:11 瀏覽:616
python對象參數 發布:2025-05-10 03:43:11 瀏覽:576
自己伺服器搭建梯子 發布:2025-05-10 03:31:39 瀏覽:573
華為升級包怎麼解壓 發布:2025-05-10 03:18:24 瀏覽:603
c語言以什麼結束 發布:2025-05-10 03:18:22 瀏覽:258
160android 發布:2025-05-10 03:03:30 瀏覽:178
pythonstorage 發布:2025-05-10 02:58:38 瀏覽:499
如何查看電腦配置顯卡參數 發布:2025-05-10 02:37:00 瀏覽:106
證券交易密碼在哪裡修改 發布:2025-05-10 02:31:56 瀏覽:839
javafor是什麼意思 發布:2025-05-10 02:23:09 瀏覽:842