“清除内存”+ appWidget崩溃后,服务不会重新启动

我已经构建了一个appWidget,它在onEnabled()方法上注册了一些服务。 问题是,在我使用内置任务管理器的Clean Memmory / Ram后,appWidget视图崩溃(所有appWidgets TextView的文本都设置为默认值(TextView)),服务停止运行,从不重启。 这只发生在设置小部件一段时间后,如果我在设置小部件后立即清理Memmory / Ram,则不会发生错误,但我想这与任务管理器清理RAM的方法有关。 最后,我的问题是:有没有办法告诉android系统重新启动这些服务? 我通过市场下载的其他appWidgets似乎在此过程后继续正常工作。 会很高兴的想法和解决方案! 谢谢高级,Gal 🙂 我使用的一些代码: appWidget中的onEnabled()方法: @Override public void onEnabled(Context context) { super.onEnabled(context); Intent newinIntent = new Intent(context, CallService_1x1.class); context.startService(newinIntent); newinIntent = new Intent(context, SmsService_1x1.class); context.startService(newinIntent); } 其中一个服务的一些方法(其他服务非常相似,因为这是来自他们的抽象方法): @Override public int onStartCommand(Intent intent, int flags, int startId) { // We want this service to continue […]

REST响应后如何删除文件

在将文件作为对REST请求的响应返回后,处理删除文件的最佳方法是什么? 我有一个端点,根据请求创建一个文件并在响应中返回它。 一旦调度响应,就不再需要该文件,可以/应该删除该文件。 @Path(“file”) @GET @Produces({MediaType.APPLICATION_OCTET_STREAM}) @Override public Response getFile() { // Create the file … // Get the file as a steam for the entity File file = new File(“the_new_file”); ResponseBuilder response = Response.ok((Object) file); response.header(“Content-Disposition”, “attachment; filename=\”the_new_file\””); return response.build(); // Obviously I can’t do this but at this point I need to delete […]

在Stream中过滤Null项

使用Java Stream时,映射后有时会出现空值。 目前,当需要省略这些值时,我使用: .stream() . .filter(element -> element != null) . 对于更具function性的风格,可以快速编写一个小辅助方法: public static boolean nonNull(T entity) { return entity != null; } 这样您就可以使用方法引用: .stream() . .filter(Elements::nonNull) . 我找不到这样的jdk方法,即使我怀疑他们已经包含了一个。 这里有不同的方法吗? 或者他们是否因为某种原因而省略了这个?

如何确保我不是同时在两个线程之间共享相同的套接字?

我有一个代码,我正在处理套接字,我需要确保我不在两个线程之间共享相同的套接字 。 在我的下面的代码中,我有一个后台线程,每60秒运行一次并调用updateLiveSockets()方法。 在updateLiveSockets()方法中,我迭代我拥有的所有套接字,然后通过调用SendToQueue类的send方法SendToQueue ping它们,并根据响应我将它们标记为活动或死亡。 现在所有的读者线程将同时调用getNextSocket()方法来获取下一个可用的套接字,因此它必须是线程安全的,我需要确保所有的读者线程都应该看到相同的SocketHolder和Socket状态。 下面是我的SocketManager类: public class SocketManager { private static final Random random = new Random(); private final ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor(); private final Map<Datacenters, List> liveSocketsByDatacenter = new ConcurrentHashMap(); private final ZContext ctx = new ZContext(); // … private SocketManager() { connectToZMQSockets(); scheduler.scheduleAtFixedRate(this::updateLiveSockets, 60, 60, TimeUnit.SECONDS); } // during startup, making […]

我的Java程序中“可能会丢失精度”

我是Java的新手。 我写了以下代码: import java.io.*; import java.lang.*; public class distravel { public static void main(String args[]) { String a1,a2,a3; int x=2; float d,u,a,t; //d=distance travelled,u=initial velocity,a=acceleration,t=timeinterval try { InputStreamReader read=new InputStreamReader(System.in); BufferedReader buff=new BufferedReader(read); System.out.print(“Enter the INTIAL VELOCITY:”); a1=buff.readLine(); u=Float.parseFloat(a1); System.out.print(“Enter the ACCELERATION:”); a2=buff.readLine(); a=Float.parseFloat(a2); System.out.print(“Enter the TIME:”); a3=buff.readLine(); t=Float.parseFloat(a3); d=((u*t)+a*Math.pow(t,x))/2F; System.out.print(“The total DISTANCE TRAVELLED:”+d); } […]

如何通过Reflection扩展Java类?

我有两个字符串: String a=”org.test.A”; String b=”org.test.B”; 我通过Reflection得到了一堂课 Class aClass = Class.forName(a); 我想aClass扩展b,如: Class okClass=aClass.extends(b);//how to implement this? 怎么实现这个? 如何获得okClass? 谢谢!

在另一个类中创建内部类对象的数组

请考虑以下嵌套类。 class Outerclass { class innerclass { } } class util { //how to declare an array of innerclass objects here? }

如何从Javascript调用GWT java函数?

是否可以从Javascript调用Java(GWT)方法? 从文档中还不清楚。 此处的所有示例http://code.google.com/intl/ru/webtoolkit/doc/latest/DevGuideCodingBasicsJSNI.html演示了如何从JSNI(非JS)函数调用java函数。 更新1 这是一个Java代码: public class Test_GoogleWeb_JSNI_02 implements EntryPoint { /** * This is the entry point method. */ public void onModuleLoad() { } public static void Callee() { Window.alert(“Callee”); } } 这是html中的调用者按钮示例: 这里有一些我尝试过但没有用过的function: function Test01() { @com.inthemoon.tests.client.Test_GoogleWeb_JSNI_02::Callee()(); } function Test02() { com.inthemoon.tests.client.Test_GoogleWeb_JSNI_02::Callee()(); } 更新2 以下工作。 Java准备: public void onModuleLoad() { Prepare(); } public […]

如何在Java中合并两个输入流?

在Java中有两个InputStream,有没有办法合并它们,所以你用一个InputStream结束,它给你两个流的输出? 怎么样?

在java中使用request.getParameter()时为什么字符被破坏?

我在JSP页面中有这样一个链接,编码为big5 http:// hello / world?name =婀ㄉ当我在浏览器的URL栏中输入它时,它将被改为http:// hello / world?name = %23%24%23当我们想在jsp页面中获取此参数时,所有字符都已损坏。 我们设置了这个:request.setCharacterEncoding(“UTF-8”),因此所有请求都将转换为UTF8。 但为什么在这种情况下,它不起作用? 提前致谢!。