小编use*_*129的帖子

Android:如何知道应用何时进入或"后台"模式?

我正在尝试使用Android实现以下功能:

  • 当应用程序处于后台时,线程会立即轮询服务器以检索数据并通知用户新数据是否可用.我正在使用服务,很好.

  • 当应用程序处于"活动"使用状态时,即其中一个活动可见时,轮询应该停止,因为它可能会干扰其他用户操作.

我不明白如何检测应用程序的"活动"或"背景"使用之间的转换.onResume()活动方法似乎没有帮助,因为无论如何,活动可以在"活动"使用期间隐藏或可见.我的理解是应用程序本身并没有区分两个状态.
按下HOME按钮时是否可以相关?还有另一种方法可以区分吗?
我在考虑相当于iPhone的app委托方法applicationDidEnterBackground.这是用Android思考的正确方法吗?或者我应该使用另一种方法?

谢谢.

android background

10
推荐指数
1
解决办法
4387
查看次数

Google地图信息窗口中的点击事件未被捕获

使用Google Map v2,我希望能够在单击GMarker的InfoWindow中的文本时触发功能.

$(".foo").click(myFunction);

...

marker.openInfoWindowHtml("<span class=\"foo\">myText</span>");
Run Code Online (Sandbox Code Playgroud)

不起作用.为什么事件没有被InfoWindow捕获?

javascript google-maps mouseclick-event infowindow

9
推荐指数
2
解决办法
1万
查看次数

2对多而不是1对多对多

在Hibernate教程中,第25章最佳实践说我们应该使用2个一对多关系,而不是使用中间链接类的多对多关系.我看不出它有什么好处:为什么创建一个3d实体会更好,而多对多可以生成一个充当这个中间链接的连接表.但是,这个建议必须有充分的理由.

有人可以解释这个建议的理由吗?谢谢.

hibernate

9
推荐指数
1
解决办法
1605
查看次数

Android:AsyncTask可以在另一个线程中返回UI线程吗?

Android文档说postExecute()在UI线程上调用了AsyncTask .我的印象postExecute()是从被调用的Thread execute()调用的:我一直在后台Service中使用AsyncTask并使用自己的线程,并且在服务线程中调用了postExecute(),而不是主线程.
但是,我最近遇到了一个问题,即postEecute()根本没有被调用,而抛出异常:"在死线程上向处理程序发送消息".

具体如何:
- AsyncTask只能在主线程中使用吗?
- 如果没有,postExecute()应该调用哪个线程:总是UI线程,还是execute()调用线程?

谢谢

multithreading android android-asynctask

5
推荐指数
1
解决办法
3848
查看次数