Tag: 服务

JAVA – Raspberry-pi – 应用程序即服务启动然后立即停止

我需要在raspberry的创业公司启动一个Java应用程序,但我无法弄清楚如何?! 我已经检索了PbxMan的脚本,将其作为服务运行: https ://stackoverflow.com/a/21283530/5066919 我做了一个简单的脚本,在后台启动应用程序 我在重新启动时将它推入crontab中… 我在main的第一行和addShutdownHook()中播放声音。 所以我可以听到每次应用程序启动然后立即停止… 当然,当我在CLI中启动它时,我没有这个问题! :@

服务在onCreate上使用nullpointerexception崩溃

我想检查服务中每5分钟的实际时间,并根据时间静音或取消静音。 早些时候我试图在最后使用一段时间(true)和thread.sleep(300000),但它总是用ANR崩溃,所以我试图使用一个计时器任务,但现在它在线AudioManager audioManager = (AudioManager)this.getSystemService(Context.AUDIO_SERVICE);之后崩溃了AudioManager audioManager = (AudioManager)this.getSystemService(Context.AUDIO_SERVICE); 使用NullPointerException package de.nathan.android.droidschool; import android.app.Service; import android.content.Context; import android.content.Intent; import android.media.AudioManager; import android.os.IBinder; import java.io.File; import java.util.GregorianCalendar; import java.util.Timer; import java.util.TimerTask; /** * Created by nathan on 29.08.13. */ public class MuteService extends Service { Timer myTimer = new Timer(); MyTimerTask myTimerTask= new MyTimerTask(); AudioManager audioManager = […]

如何设置Service / StartForeground正确工作CountDownTimer

我不知道在哪里/如何运行此服务在后台工作。 我开发了使用CountDownTimer的应用程序。 我发现我应该在Service.class中创建一个CountDownTimer并在MainActivity.class中运行一个Service.class。 为什么TextView不会在我的屏幕上显示? 我把它放在OnCreate和onStartCommand中。 接下来我尝试在MainActivity中运行它,但没有成功。 我仍然尝试实现我的代码以在后台正确地使用此CountDownTimer。 在官方Android网站上,我看到他们使用“Log.i”命令来运行此Foreground方法。 我如何在我的代码中使用它? 我应该在Service.class中添加它吗? 以下是我的代码: 主要活动: Button btnStart, btnStop; TextView textViewTime; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void startService(View view) { Intent intent = new Intent(this,MyService.class); startService(intent); } public void stopService(View view) { Intent intent = new Intent(this,MyService.class); stopService(intent); } 为MyService: Button btnStart, btnStop; TextView […]

无法运行用户服务。 例外:无法启动Java,ServiceStart返回4

我使用教程http://web.archive.org/web/20090228071059/http://blog.platinumsolutions.com/node/234创建了一项服务 我创建了如下文件: C:\MyService1 \bin \myService1.exe \myService1w.exe \classes \com\services\MyService1.class \HelloWorld.jar \logs 现在,当我执行myService1.exe时,服务还没有开始。 我在日志中收到消息 [2015-06-02 15:23:29] [info] [ 3968] Commons Daemon procrun (1.0.15.0 32-bit) started [2015-06-02 15:23:29] [info] [ 3968] Running ‘MyService1’ Service… [2015-06-02 15:23:29] [info] [ 4204] Starting service… [2015-06-02 15:23:29] [error] [ 5372] FindClass com/services/MyService1 failed [2015-06-02 15:23:29] [error] [ 4204] Failed to start Java […]

如何在android中使用后台服务获取经度和经度?

我想使用后台服务来获取用户的经度和经度。我使用以下代码来获取android中的纬度和经度。 public class MyService extends Service { private static final String TAG = “BOOMBOOMTESTGPS”; private LocationManager mLocationManager = null; private static final int LOCATION_INTERVAL = 10; private static final float LOCATION_DISTANCE = 0; Handler mHandler = new Handler(); public SharedPreferences pref; GoogleApiClient mGoogleApiClient = null; Location mLastLocation; Double latitude, longitude; @Override public int onStartCommand(Intent intent, […]

即使应用程序未运行,也要处理onMessageReceived()和onTokenRefresh()

我有一个有2项服务的应用程序: MessagingService extends FirebaseMessagingService 和 InstanceIDService extends FirebaseInstanceIdService 在AndroidManifest.xml文件中声明了。 问题是,当我的应用程序的进程被强制关闭时,服务也会被杀死。 我希望他们不被杀死。 我听说过Service类的START_STICKY标志,但是我不能覆盖这些服务中的onStartCommand()方法,以便返回这个标志……

无法在android中的服务中启动计时器

我不知道发生了什么事……我无法在我的服务中启动计时器。 遵循代码 public class BkgService extends Service{ private Timer ServUpdTimer = new Timer(); private static long TMR_INTERVAL = 10*60*1000; public void onCreate() { super.onCreate(); StartServUpdateTask(); } private void StartServUpdateTask() { if(ServUpdTimer != null) ServUpdTimer.cancel(); ServUpdTimer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { } }, 0, TMR_INTERVAL); } } 但当我到达ServUpdTimer.scheduleAtFixedRate()我得到以下exception 03-03 23:32:14.851:E / AndroidRuntime(6083):java.lang.RuntimeException:无法使用Intent {cmp = […]

将Groovy Grails-service注入Java类

我有一个在Groovy中实现的Grails服务,我想在Web应用程序中注入Java类。 我知道我可以通过applicationContext.getBean(“exampleService”)在Java中获取bean,但是在编译时类型ExampleService是未知的。 我可以简单地导入服务吗? 它似乎没有声明一个典型的包。 (我对Grails和Java Web都很陌生,因此非常感谢能够帮助我了解幕后发生的事情。)

使用Apache Thrift进行服务多路复用

服务器代码: TMultiplexedProcessor processor = new TMultiplexedProcessor(); processor.registerProcessor( “AddService”, new AddService.Processor(new AddHandler())); processor.registerProcessor( “MultiplyService”, new MultiplyService.Processor(new MultiplyHandler())); TServerTransport serverTransport = new TServerSocket(7911); TSimpleServer server = new TSimpleServer(new TSimpleServer.Args(serverTransport). processor(processor)); System.out.println(“Starting server on port 7911 …”); server.serve(); 客户代码: TFramedTransport transport; transport = new TFramedTransport(new TSocket(“localhost”, 7911)); transport.open(); TProtocol protocol = new TBinaryProtocol(transport); System.out.println(“1”); TMultiplexedProtocol mp = new […]

如何在android中安排一些代码执行或者:android中的守护程序线程究竟是什么?

我目前正在开发一个Android OS的应用程序,它需要不时从远程服务器获取数据。 因为即使实际的前端应用程序没有运行,也应该执行这个“更新”,我实现了一个在系统启动时启动的远程服务。 现在我需要安排一个计时器来开始更新。 “计时器”是这项工作的合适人选吗? 如果“是”:“正常”Timer()与Timer(“真实”)作为“守护进程”启动的有什么区别? http://developer.android.com/reference/java/util/Timer.html对此不是很有帮助:( 编辑: 好的 – 我看到有更多的方法可以做到这一点比我预期的要多。 澄清: 我想在指定的时间执行一些代码。 此计时器用于在将来7天触发代码执行。 (即,在给定的工作日和时间每周) 代码应该在没有唤醒电话的情况下运行,如果它正在“hibernate”(屏幕变暗)。 运行代码时,不应启动任何活动。 即屏幕上没有弹出应用程序。 执行的代码应该从互联网上获取一些数据。 如果此时没有可用的互联网连接,则应将计时器设置为30分钟,然后再试一次。 完成代码执行后,计时器将设置为下一个时间间隔,这将是7天后。 计时器应该在系统启动时启动,例如,如果我重新启动电话,计时器应确定执行代码的下一个日期并安排计时器。 这必须在没有任何用户交互的情况下工作! 当“hibernate”时,线程/服务/定时器/任何东西都不应该消耗任何系统资源… 我需要的是一个简单的unix cronjob。 我想这里有人知道android的“newsrob”吗? 我想要实现的与newsrob-updateservice几乎相同。