当前位置:首页 » 安卓系统 » 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-11 19:12:14 浏览:231
固定ip如何自建服务器 发布:2025-05-11 19:12:10 浏览:629
如何恢复儿童储蓄密码箱原始密码 发布:2025-05-11 18:57:10 浏览:285
javajdk区别 发布:2025-05-11 18:45:21 浏览:35
如何防止apk被反编译 发布:2025-05-11 18:45:16 浏览:152
安卓什么功能好 发布:2025-05-11 18:21:31 浏览:354
我的世界2b2t服务器中国版 发布:2025-05-11 18:16:35 浏览:693
萌将风云脚本 发布:2025-05-11 18:07:14 浏览:745
密码锁aid代表什么 发布:2025-05-11 18:00:01 浏览:757
编程的组成 发布:2025-05-11 17:58:34 浏览:808