ios中有一项出色功能 - appdelegate中的一种方法,当整个应用返回到与用户的交互时,由ios调用。在android上,每个活动控制器上都有一个onResume()方法,它从外部运行相同的应用程序(取决于以前的活动)。所以你无法从内心或外部理解赛格的哪一方。例如,您希望每次从后台恢复时锁定应用的屏幕。如果您的应用程序中有大量活动并在它们之间流窜 - 您必须每次都传递布尔标志以显示目标活动理解它是从应用程序内部调用的(而不是从其他应用程序的返回)以及屏幕不应该被锁定。有没有更好的模式来捕捉隐藏\取消隐藏整个应用程序 - 就像在ios中一样?Android - 获取应用背景恢复事件 - 像iOS中的appdelegate一样iOS
0
A
回答
0
一种方法是拥有一个BaseActivity,您的所有活动都从中继承,并对活动进行计数。 实施例:
public class BaseActivity extends Activity {
private static int sActivitiesAlive;
@Override
protected void onResume() {
super.onResume();
if (sActivitiesAlive == 0) {
onFirstActivityResume();
}
sActivitiesAlive++;
}
@Override
protected void onPause() {
super.onPause();
sActivitiesAlive--;
}
protected void onFirstActivityResume() {
// Override in children activities
}
}
0
Android不具有等同的方法 - 最相似的回调的onResume()(which gets called whenever your activity resumes)。如果要跟踪用户是否在特定活动中处于活动状态,则可以在调用onPause()时手动存储Date,然后检查onResume()是否已经过去X分钟。
private static final long TIMEOUT = 60 * 1000; // 1 min
long lastInteraction;
lastInteraction = new Date().getTime(); // set in onPause()
boolean isFromBackground = new Date().getTime() - lastInteraction > TIMEOUT; // check in onResume()
相关问题
- 1. iOS 4从背景中恢复
- 2. iOS应用背景图像
- 3. IOS故事板:恢复ID就像故事板ID一样?
- 4. 背景iOS应用
- 5. iOS背景取
- 6. 恢复背景应用
- 7. 恢复iOS设备标准背景图像
- 8. 在iOS背景中获取位置
- 9. 在cocos2d/IOS中获取背景颜色
- 10. UITableView的背景图像 - iOS
- 11. 背景图像上的iOS
- 12. UITabbar的背景图像ios
- 13. 背景图像为Android和IOS
- 14. iOS的事件在复杂的应用
- 15. 背景中的IOS应用程序?
- 16. 拉伸iOS背景图像
- 17. iOS 6背景图像
- 18. 调整图像背景iOS
- 19. iOS/Android背景音频流
- 20. 的iOS使用图像背景按钮
- 21. sectionHeader在iOS中的背景图像
- 22. 像instagram一样的Android背景栈
- 23. 去背景后恢复应用程序
- 24. iOS应用 - 应用背景图像对象的UIView
- 25. 对于像iOS一样的iOS CoordinatorLayout
- 26. 如何在Android中运行iOS中的应用程序背景?
- 27. 设置一个随机应用程序背景图像iOS 6
- 28. 下载带有暂停和恢复的大型视频文件,并在ios中获取背景。
- 29. 从背景中恢复Android应用堆栈
- 30. 使用故事板iOS的背景图像滚动