2016-02-21 77 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不起作用。你需要把你的工作放在单独的课堂上。