Android架构:光标应该放在哪里?
情景:Android架构:光标应该放在哪里?,android,Android,情景: public class MyApplication extends Application{...} 三项活动,概述、列表和地图, 显示相同的数据,只提供不同的UI/UX 输入Contentprovider数据库并由SyncAdapter在外部频繁更新的数据, 另一个应用程序的一部分 将Contentprovider中的数据读取到游标。 Do cursor.setNotificationUri(), 使光标侦听db/Uri更改 Alt1.在MyApplication中按住光标。 概述
public class MyApplication extends Application{...}
三项活动,概述、列表和地图,显示相同的数据,只提供不同的UI/UX 输入Contentprovider数据库并由SyncAdapter在外部频繁更新的数据,
另一个应用程序的一部分 将Contentprovider中的数据读取到游标。
Do cursor.setNotificationUri(),
使光标侦听db/Uri更改 Alt1.在MyApplication中按住光标。
概述、列表和地图然后向MyApplication请求数据。
在数据库更改中,MyApplication保留对每个活动的引用
并通知他们再次从MyApplication请求数据 备降2.在每个活动中保持一个光标。
在db change上,每个活动都会再次查询光标以获取数据
光标应该放在哪里?我面临类似的问题,但不是DB和光标,而是简单的web请求\响应。
您很快就会开始面临的问题是,当您的活动在请求-响应过程中终止时会出现什么情况。 我建议如下:
所以基本上u在每个活动中都会有一个游标,但是不需要通过代码来管理它,除非您需要做一些不符合标准的事情。不要忘记在活动结束后处理游标。我面临类似的问题,但不是DB和游标,而是简单的web请求\响应。
您很快就会开始面临的问题是,当您的活动在请求-响应过程中终止时会出现什么情况。 我建议如下:
所以基本上u在每个活动中都会有一个游标,但是不需要通过代码来管理它,除非您需要做一些不符合标准的事情。活动结束后,不要忘记处理光标。谢谢,非常感谢您的输入。根据您的回答,我不确定您是否正在使用自定义应用程序。当AndroidOS结束活动的生命周期时,应用程序仍然有效。如果应用程序持有游标,我们将只查询一次,但保留对活动的引用。如果每个活动有一个游标,我们将使用更多的数据库资源,但不存在耦合应用程序活动。我的问题是关于这两种方法的缺点和优点。不要假设应用程序永远存在。在真实设备上,它可能会作为终止后台进程的一部分被终止。例如,如果你接到一个来电,你的应用程序就会进入后台。当应用程序再次出现在前台(电话通话结束)时,您的应用程序进程将恢复。在还原时,将重新创建
应用程序
实例,但是只有您负责处理其状态,例如,如果您在应用程序
实例中有某个字段,并且该字段是由应用程序的其他部分设置的,那么现在您可以在那里获得null
。谢谢您的输入。根据您的回答,我不确定您是否正在使用自定义应用程序。当AndroidOS结束活动的生命周期时,应用程序仍然有效。如果应用程序持有游标,我们将只查询一次,但保留对活动的引用。如果每个活动有一个游标,我们将使用更多的数据库资源,但不存在耦合应用程序活动。我的问题是关于这两种方法的缺点和优点。不要假设应用程序永远存在。在真实设备上,它可能会作为终止后台进程的一部分被终止。例如,如果你接到一个来电,你的应用程序就会进入后台。当应用程序再次出现在前台(电话通话结束)时,您的应用程序进程将恢复。在还原时,将重新创建应用程序
实例,但是只有您负责处理其状态,例如,如果您在应用程序
实例中有某个字段,并且该字段是由应用程序的其他部分设置的,那么现在您可以在那里获得null
。+1回答问题。Android架构细节确实是一个需要深入讨论的问题。Android架构细节确实是一个需要深入讨论的问题。