以块的形式将数据同步到服务器会导致StackoverflowException

时间:2016-01-07 04:10:00

标签: java android interface callback stack-overflow

我使用onSuccessCallBack()接口方法在块中同步大量数据。使用图像中显示的以下方法将数据发送到服务器。 在这里,我面临着StackOverflowException的问题。我怎么能避免它。

  1. 我应该实现BroadcastListener并在每个周期完成后从NotifySyncCompleted()方法广播。在BroadcastListener的OnReceive()方法中,我可以调用NextChunkSync()方法。
  2. 在继续之前,有没有办法在每个周期后释放堆栈内存。
  3. 即使在使用AbstractThreadedSyncAdapter后,此问题将如何解决。
  4. enter image description here

    public class SuncManager implements SuccessSyncCallBack{
    
    public SyncNextChunk(){
    
        new WebServiceManager(this).syncToServer();
    }
    
    
    @Override
    public void onSuccessForSyncCallBack() {
        SyncNextChunk();
    }}
    

    WebServiceManager类同步数据到服务器接收响应并保存在数据库中并通知onSuccessForSyncCallBack()。

    如果迭代次数较少,一切正常。只有在块中同步大量数据时才会出现问题。

1 个答案:

答案 0 :(得分:2)

This flow will help you

确保在完成所有同步后停止服务。

您可以从here获取有关意向服务的信息。并从here广播接收方。祝您好运!