相关疑难解决方法(0)

Android REST客户端,Sample?

即使这个帖子已经接受了答案,随意提出其他想法,你也可以使用或喜欢


我遇到过这些文章:

这引导我看到关于REST客户端应用程序的Google I/O 2010视频

从现在开始,我一直在我的Application控制器类中创建REST组件作为静态组件.

从现在开始,我认为,我应该改变模式.有人指出,Google IOSched应用程序是如何在Android上编写REST客户端的绝佳示例.有人说这种方式过于复杂.

那么,任何人都可以告诉我们什么是最佳做法?简而言之.
IOSched应​​用程序对于样本用例来说太复杂了.

java api rest android

113
推荐指数
3
解决办法
14万
查看次数

需要实现Virgil Dobjanschi REST实现模式的示例Android REST Client项目

我想在Android手机上构建一个REST客户端.

REST服务器公开了几个资源,例如(GET)

http://foo.bar/customer      List of all customer
http://foo.bar/customer/4711    The customer with id 4711
http://foo.bar/customer/vip     List of all VIP customer

http://foo.bar/company           List of all companys
http://foo.bar/company/4711     The company with the ID 4711
http://foo.bar/company/vip      List of all VIP companys
Run Code Online (Sandbox Code Playgroud)

我(想)我知道如何与REST服务器通信并获取我需要的信息.我将使用这样的API实现REST Client类

public List<Customer> getCustomers();
public Customer getCustomer(final String id);
public List<Customer> getVipCustomer();

public List<Company> getCompanies();
public Customer getCompany(final String id);
public List<Customer> getVipCompanies();
Run Code Online (Sandbox Code Playgroud)

参考了Virgil Dobjanschi的" 开发Android REST客户端应用程序 " 演示文稿,我了解到在Activity的Worker Thread中处理REST请求并不是一个好主意.相反,我应该使用服务 API.

我喜欢将Singleton ServiceHelper绑定到(本地)服务的想法,但我担心我不理解服务概念是否正确.

目前我不明白如何将REST调用结果(在服务中完成异步)报告回调用者Activity.我也想知道我是否需要一个服务来处理所有REST请求(具有不同的返回类型),或者我是否需要为每个REST请求提供专用服务.

可能我还有很多其他的理解问题,所以对我来说最好的事情就是满足我需求的示例应用程序.我的用例并不罕见,我希望那里有示例应用程序.

你能让我知道吗

任何其他建议指出我在正确的实现方向也是有帮助的(Android API-Demo与我的用例不匹配).

提前致谢. …

java rest android design-patterns

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

在Android中使用ResultReceiver

从根本上说,我想从IntentService建立一个Activity的回调.我的问题与这里回答的问题非常相似:

宁静的API服务

但是,在答案代码中,活动代码被视为实现ResultReceiver.除非我遗漏了什么,否则ResultReceiver实际上是一个类,所以它无法执行此实现.

基本上,我问的是将ResultReceiver连接到该服务的正确方法是什么.我对Handler和ResultReceiver概念感到困惑.任何工作示例代码将不胜感激.

service android callback android-activity

59
推荐指数
3
解决办法
5万
查看次数

通知服务活动

我正试图Service从我Activity的网页上寻找更改,这是一个私人应用,所以我不打扰电池寿命...

但是我想将数据从我的传递Service给我Activity......我似乎无法找到一种方法来调用Activity我的Service.我怎样才能做到这一点?

service android android-activity

41
推荐指数
1
解决办法
3万
查看次数

服务如何将结果返回给活动

我似乎有一个经典的任务,但我找不到任何关于如何做的例子.

我想下载一些东西.好吧,我称之为网络服务并得到回复...但它几乎是一样的.

为了做到这一点,我有一个活动,启动一个服务,产生一个完成工作的线程.

现在我想使用我在启动服务的活动中获得的数据.

(我假设开始另一个活动来处理显示结果的工作很简单)

我的问题是服务如何通知某个活动(启动它或另一个活动的活动)?

任何指向示例的指针都非常感谢.

问候

service notifications android android-activity

28
推荐指数
2
解决办法
3万
查看次数

android中的Broadcast Receiver和ResultReceiver

android中的BroadcastReceiverResultReceiver有什么区别?

android

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

从IntentService或AsyncTask进行REST API调用?

想象一下,一个活动打开的典型场景,需要调用REST HTTP API来获取一些内容,并且一旦收到更新UI.显然,API调用需要在单独的线程上进行,但是应该使用AsyncTask,IntentService还是其他方法完成,为什么?

android android-asynctask intentservice

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

URLConnection或HTTPClient:哪个提供更好的功能和更高的效率?

我希望为Android应用程序创建一个登录表单.我想使用post方法将信息发送到服务器端,由PHP文件处理它; 然后验证参数并发回响应.

我看一下使用HttpClient和URLConnection的实现,它们非常相似.哪个在Android应用程序中使用效率更高?

谢谢Fabii

android urlconnection httpclient

17
推荐指数
3
解决办法
3万
查看次数

当应用程序在AsyncTask执行期间进入后台时应该怎么做?

我有一个使用AsyncTasks来调用REST服务器的应用程序.

想象一下,在加载期间(这是AsyncTask进入REST服务器并将数据传送到下一个屏幕),用户按下Home.

建议:

  • 取消当前的AsyncTask,并在恢复活动时重新启动

要么

  • 继续AsyncTasks,但通过检查应用程序是否在后台来避免startActivity(以避免在将应用程序发送到后台后新活动的前景).并且onResume发送到下一个活动

您应该预见的最坏情况:

  1. 该应用程序进入后台,由于内存不足而被杀死
  2. 由于超时或其他REST错误,asynctask失败

两者之后,用户返回应用程序...

android android-asynctask

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

Android应用程序架构 - 在哪里放置REST API调用代码?

我想更好地了解如何构建Android应用程序,其中活动会触发API调用(例如).

我目前通过将API调用放入AsyncTask子类来实现它,向它传递对活动的引用,以便它可以更新onPostExecute中的UI.但我的直觉是,这会产生过度耦合的代码.

我想知道是否应该将这样的API调用放入服务中,并使用BroadcastReceiver来更新活动.

你怎么说,AsyncTask或BroadcastReceiver?

android broadcastreceiver android-asynctask android-activity

12
推荐指数
1
解决办法
3198
查看次数

使用localbroadcastmanager sendorderedbroadcast的组合发送广播

我想在这篇博客文章中实现CommonsWare所描述的内容:http://commonsware.com/blog/2010/08/11/activity-notification-ordered-broadcast.html.这篇文章很有意义,我可以在这里浏览示例源代码:https://github.com/commonsguy/cw-advandroid/tree/master/Broadcast.

我很好奇的是,如果LocalBroadcastManager.getInstance(UnzipService.this).sendBroadcast(broadcast);您在清单中定义的类型的广播接收器仍然会接收到服务内部的呼叫.

如果我问的不清楚,我想要做的是使用LocalBroadcastManager,因为我的服务的广播不一定需要在系统范围内看到,如果可能,我宁愿保持私有,但是如果用户关闭我的应用并且服务仍在运行,我也想显示通知.有没有办法结合这两种功能而不在服务内部发送两次广播?

(我不想做什么)像: LocalBroadcastManager.getInstance(UnzipService.this).sendBroadcast(broadcast); sendOrderedBroadcast(broadcast);

service android broadcastreceiver commonsware

7
推荐指数
1
解决办法
3573
查看次数