标签: robospice

改造:@GET命令中的多个查询参数?

我正在使用Retrofit和Robospice在我的Android应用程序中进行API调用.所有的@POST方法都很有用,所以@GET命令在URL中没有任何参数也是如此,但是我无法获得任何@GET调用来使用参数!

例如,如果我的API路径是"my/api/call /"并且我想在URL中使用2个参数"param1"和"param2",那么get调用将如下所示:

http://www.example.com/my/api/call?param1=value1m2=value2

所以我设置了我的@GET界面,如下所示:

@GET("/my/api/call?param1={p1}&param2={p2}")
Response getMyThing(@Path("p1")
String param1, @Path("p2")
String param2);
Run Code Online (Sandbox Code Playgroud)

但我得到一个错误,说
"请求网络执行期间发生异常:URL查询字符串" /my/api/call?param1={p1}&param2={p2}"方法getMyThing可能没有替换块."

我究竟做错了什么?

api android get robospice retrofit

54
推荐指数
4
解决办法
4万
查看次数

在onStop之前调用新Activity的onStart

我有一个申请.我startActivity()用来开始活动.

任何人都可以告诉我为什么系统首先调用onStart()新的Activity而不是父母onStop()?这是否可能(没有系统错误)?

我发现在onStart()之后直接调用Fragment onStop() - 为什么?回答,但我与Fragments没有任何共同点,并且使用了android-support库.我被困了,因为我使用的是RoboSpice,它必须在onStart和onStop中包含正确的同步方法.我不能,因为系统以错误的顺序调用它.

我在此应用程序中也使用GCM和Analytics库.

lifecycle android android-fragments android-activity robospice

24
推荐指数
1
解决办法
5898
查看次数

使用RoboSpice有一种方法可以从异常中获取HTTP错误代码吗?

我正在编写一个使用RoboSpice的应用程序.在请求侦听器onRequestFailure(SpiceException arg0)中是否有一种方法可以确定错误是由于发生了401 HTTP错误?

我有一个后端服务,当令牌到期时返回401错误,当发生这种情况时,我需要提示用户重新输入他们的凭据.

反正知道发生了401 HTTP错误吗?

以下是我的请求示例.

   public class LookupRequest extends SpringAndroidSpiceRequest <Product> {

public String searchText;
public String searchMode;

public LookupRequest() {
    super( Product.class );
}

@Override
public Product loadDataFromNetwork() throws Exception {
    String url = String.format("%s/Lookup?s=%s&m=%s", Constants.BASE_URL, searchText, searchMode);
    Ln.d("Calling URL: %s", url);
    return getRestTemplate().getForObject(url, Product.class );
}
Run Code Online (Sandbox Code Playgroud)

android http-status-code-401 robospice

14
推荐指数
1
解决办法
9602
查看次数

如何增加robospice android中的改进请求的超时?

我在我的项目中实现了robospice并对所有api调用使用了改进.对于某些请求,我需要增加超时,请让我知道我该怎么做?

实际上我正在使用扩展RetrofitGsonSpiceService的服务.我的服务类的代码如下:

public class MyService extends RetrofitGsonSpiceService {

    @Override
    public void onCreate() {
        super.onCreate();
        addRetrofitInterface(MyInterface.class);
    }

    @Override
    public CacheManager createCacheManager(Application application) throws CacheCreationException {
        CacheManager cacheManager = new CacheManager();
        ObjectPersisterFactory persistFactory = new RetrofitObjectPersisterFactory(application,
                getConverter(), getCacheFolder());

        persistFactory.setAsyncSaveEnabled(true);
        cacheManager.addPersister(persistFactory);

        return cacheManager;
    }

    @Override
    protected String getServerUrl() {
        return Utils.getBaseUrl();
    }

    @Override
    protected RestAdapter.Builder createRestAdapterBuilder() {
        RestAdapter.Builder builder = new RestAdapter.Builder().setRequestInterceptor(
                new RequestInterceptor() {
                    @Override
                    public void intercept(RequestFacade request) {
                        request.addHeader(Const.HEADER_DEVICE_TYPE_KEY,
                                Const.HEADER_DEVICE_TYPE_VALUE);
                    }
                }
        );
        builder.setEndpoint(getServerUrl()).setConverter(getConverter());
        return builder;
    }
}
Run Code Online (Sandbox Code Playgroud)

android robospice retrofit

13
推荐指数
2
解决办法
1万
查看次数

robospice如何管理活动生命周期?

我正在寻找android robospice库如何管理活动生命周期的技术答案.从入门页面:

https://github.com/octo-online/robospice/wiki/Starter-Guide

"作为Activity(或其他上下文)的内部类,添加一个将更新UI的RequestlListener.不要担心内存泄漏,RoboSpice会管理您活动的生命周期."

我的问题是robospice如何自动更新请求侦听器,以便它仍然能够在轮换后以及在活动被销毁并重新创建为新实例之后使用正确的上下文调用正确的侦听器?

我一直试图对源代码进行反向工程,但还没有找到答案:

https://github.com/octo-online/robospice

android asynchronous robospice

10
推荐指数
1
解决办法
2301
查看次数

在robospice中暂停后台进程

是否可以暂停当前正在运行的后台服务并从其执行停止点开始再次运行它?

如果没有,是否至少可以在完成执行之前发送信号以停止执行SpiceService?

android asynchronous robospice retrofit

9
推荐指数
1
解决办法
189
查看次数

Robospice/Retrofit后台服务访问数据库

我已成功创建了一个Retrofit API Rest客户端,同时进行GETPOST调用,并将其作为后台服务整合到Robospice中.

但是,我希望Robospice服务连接到数据库,并从GET调用异步地保留检索到的对象.使用Retrofit Callback类似乎是显而易见的方式,但连接到数据库需要Context,我担心泄漏Context.

那么,在处理请求之前和之后,让Robospice SpiceService将数据持久保存到数据库的最佳方法是什么?

android robospice retrofit

8
推荐指数
1
解决办法
3014
查看次数

Robospice - 在更改活动时保持spice服务继续运行

我使用RoboSpice库来执行异步任务.从他们的例子中,spice服务在BaseActivity中声明,它从activity的onStart方法开始,并在activity的onStop中停止.一切都很好,但是当我想从互联网下载文件,然后我改为另一个活动时,这个下载任务被取消,因为spice服务已停止.看起来像:

public abstract class BaseActivity{
  /** The request manager. */
private SpiceManager requestManager = new SpiceManager(RequestService.class);   
  @Override
   protected void onStart() {   
      requestManager.start(this);
      super.onStart();     

   }

  @Override
  protected void onStop() {
    requestManager.shouldStop();
    super.onStop();
  }
} 
Run Code Online (Sandbox Code Playgroud)

所以我想知道是否有任何安全的方法来保持下载任务继续从Spice服务运行(此任务不触摸UI),另一个任务正常工作(意味着它们可以在停止活动时取消)但它仍然可以尊重活动生活圈.

android android-service robospice

8
推荐指数
1
解决办法
4308
查看次数

什么是Android中的RoboSpice库

我正在尝试了解android中的RoboSpice库


我在这里看到了在线文档


我尝试了什么 ::

  • 我以前研究过使用Spring Library,还有Retrofit,AsyncHttp等
  • 我明白以上所有转换JSON响应POJO

我需要更多信息 ::

  • 当我看到文件上Robospice,它看起来像周围的任何包装SpringRetrofitAsyncHttp
  • 这是真的吗?
  • 因此,通过使用RoboSpice我们可以选择底层是 SpringRetrofitAsyncHttp
  • 因此,如果出现这种情况RoboSpice使SpringRetrofitAsyncHttp等作为样板代码,使开发更容易

如果我不对,请提供明确的信息


我是android的新手,请轻松回答问题

java android robospice

8
推荐指数
1
解决办法
5297
查看次数

Spring Android Vs Retrofit

我最近一直在挖掘Android的REST客户端.大多数讨论都围绕着Volley和Retrofit,我很少遇到Ion,Robospice与这两者之间的比较.我找不到与Spring Android的任何比较,即使它似乎是一个来自知名的开源框架的可靠的Rest Client.

Spring Android很少用作Rest客户端吗?它是否与上面提到的Rest客户端不能很好地叠加?

PS - 在我上面提到的库中,看起来Robospice在将请求绑定到Activity生命周期时是否可靠?我想知道Ion,Volley和其他图书馆是否会这样做?

android android-ion robospice retrofit spring-android

8
推荐指数
0
解决办法
6484
查看次数