2016-02-21 106 views
2

試圖瞭解如何使用此lib。從Twitter的例子 使用例如:序列化對象時Android優先級作業隊列錯誤

Configuration configuration = new Configuration.Builder(this) 
     .minConsumerCount(1) 
     .maxConsumerCount(3) 
     .loadFactor(3) 
     .consumerKeepAlive(120) 
     .build(); 
jobManager = new JobManager(this, configuration); 
jobManager.addJob(new simpleJob("simple text")); 

class simpleJob extends Job{ 
    private String text; 
    public simpleJob(String text) { 
     super(new Params(1000).requireNetwork().persist()); 
     this.text = text; 
    } 

    @Override 
    public void onAdded() { 
     Log.i("job", "onAdded"); 
    } 

    @Override 
    public void onRun() throws Throwable { 
     Log.i("job", "onRun"); 
    } 

    @Override 
    protected void onCancel() { 
     Log.i("job", "onCancel"); 
    } 

    @Override 
    protected RetryConstraint shouldReRunOnThrowable(Throwable throwable, int runCount, 
                int maxRunCount) { 
     Log.i("job", "shouldReRunOnThrowable"); 

     return RetryConstraint.RETRY; 
    } 
} 

在控制檯中我只看到 「onAdded回調函數裏」。 「onRun」從未發生過。如果我添加日誌攔截器,我看到錯誤文本「序列化對象simpleJob時出錯」。 這是什麼?什麼對象應該可序列化?

+0

確實把工作放在一個單獨的班級工作? –

回答

0

正如我探討的,如果工作是內部類,serializetion不起作用。你需要把你的工作放在單獨的課堂上。