android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
2017-01-02 00:36
603 查看
直接上代码
有个监听开机启动service的类
Alarmreceiver类
Manifest.xml
这样写好后 在虚拟机测试是有效果的 但安装到手机后就不行了 我直接启动service
startService(new Intent(this, AutoRunService.class));
但也是没有反应的 WSAsyncTask并没有执行到 刚接触android不久 求助
public class AutoRunService extends Service { @Override public void onCreate() { super.onCreate(); System.out.println("*****onCreate*****"); } @Override public int onStartCommand(Intent intent, int flags, int startId) { Log.i("servicestar", "*****onStart*****"); try { new WSAsyncTask().execute(); } catch (Exception ex) { Log.i("e", ex.toString()); } return super.onStartCommand(intent, flags, startId); } @Override public IBinder onBind(Intent intent) { return null; } @Override public void onDestroy() { // TODO Auto-generated method stub // objHandler.removeCallbacks(mTasks); super.onDestroy(); } class WSAsyncTask extends AsyncTask { String result = ""; @Override protected Object doInBackground(Object... params) { //远程服务器获取数据 return null; } }
有个监听开机启动service的类
public class BootBroadcast extends BroadcastReceiver { @Override public void onReceive(Context context, Intent mintent) { if (Intent.ACTION_BOOT_COMPLETED.equals(mintent.getAction())) { // 启动完成 Intent intent = new Intent(context, Alarmreceiver.class); intent.setAction("alarm.action"); PendingIntent sender = PendingIntent.getBroadcast(context, 0,intent, 0); long firstime = SystemClock.elapsedRealtime(); AlarmManager am = (AlarmManager) context .getSystemService(Context.ALARM_SERVICE); // 10秒一个周期,不停的发送广播 am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstime, 10 * 1000, sender); } } }
Alarmreceiver类
public class Alarmreceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals("alarm.action")) { Intent i = new Intent(); i.setClass(context, AutoRunService.class); // 启动service // 多次调用startService并不会启动多个service 而是会多次调用onStart context.startService(i); } } }
Manifest.xml
<receiver android:name=".BootBroadcast" android:permission="android.permission.RECEIVE_BOOT_COMPLETED"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" > </action> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </receiver> <receiver android:name=".Alarmreceiver" android:permission="android.permission.RECEIVE_BOOT_COMPLETED"> <intent-filter> <action android:name="alarm.action" /> </intent-filter> </receiver> <service android:enabled="true" android:name=".AutoRunService" > </service>
这样写好后 在虚拟机测试是有效果的 但安装到手机后就不行了 我直接启动service
startService(new Intent(this, AutoRunService.class));
但也是没有反应的 WSAsyncTask并没有执行到 刚接触android不久 求助
相关文章推荐
- android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
- android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
- Android,每次启动手机中都会安装Appium settings和Unclock的方法
- 介绍一个在线的Linux,没有安装Linux或者虚拟机不喜欢用的童鞋可以简单的用这个jslinux测试各种命令
- 要绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布上,这样才可以显示在手机屏幕上。Android 中的画笔是 Paint类,Paint 中包含了很多方法对其属性进行设置,主要方法(没有全部列
- XenServer没有自己的文件系统,也就没有自己的ISO Libery,给我们创建虚拟机带来了不少困扰,使用正文这个方法可以不用先安装FileServer
- 介绍一个在线的Linux,没有安装Linux或者虚拟机不喜欢用的童鞋可以简单的用这个jslinux测试各种命令
- 安装MySQL 5后无法启动(不能Start service)解决方法小结
- 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法
- 无法向会话状态服务器发出会话状态请求 没有启动 ASP.NET State service错误的解决方法
- VS2003"无法启动调试 没有正确安装调试器"的解决方法
- Android应用是否可以只有一个Service或Broadcast Reciver,而没有Activity?
- VS2003无法启动调试 没有正确安装调试器的解决方法
- VS2003"无法启动调试 没有正确安装调试器"的解决方法
- Android应用是否可以只有一个Service或Broadcast Reciver,而没有Activity?
- android 启动 service 的两种方法
- Android应用是否可以只有一个Service或Broadcast Reciver,而没有Activity?
- 启动.net时弹出“当前用户没有安装MS Development Enviroment”解决方法
- 解决安装ESET NOD32防病安全软件的计算机Hyper-V虚拟机不能正常启动方法
- 关于Android中调用了post方法后貌似没有执行run方法的解释及解决办法