小编use*_*846的帖子

匕首和黄油刀与Android注释

我正在评估Android应用程序的依赖注入(DI)框架.最有力的竞争者是:Dagger(有Butter Knife)和Android Annotations.据我所知,Dagger和ButterKnife来自同一个源头,他们相互补充.这是我正在寻找的关键矩阵:

  1. 易于使用(我们的构建基于Gradle,我们使用Android Studio IDE)
  2. 测试支持(我们使用Robotium进行功能测试,使用RoboLectric进行单元测试)
  3. 性能(DI框架使用反射,哪一个更快?)

android dependency-injection android-annotations dagger butterknife

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

AIDL vs Messenger

要求:需要将服务/合同从其他流程公开给其他应用程序.例如:getPhoneRecord(recordId),deletePhoneRecord(phoneId)等
潜在的解决方案:Messenger或AIDL

根据我的分析,我认为AIDL是唯一的选择,因为Messenger提供了一种非常通用的跨应用程序发送消息的方式.Messenger仅限于在客户端发送(Message)和在服务器上发送handleMessage(Message msg).还存在其他差异,例如多线程.但是,我关心的是从其他应用程序/消费者可以调用的服务定义API契约.我的理解是否正确?

multithreading android aidl

9
推荐指数
2
解决办法
4957
查看次数

使用monkeyrunner startActivity的问题

我在线阅读了几篇帖子,包括Android开发者网站http://developer.android.com/tools/help/monkeyrunner_concepts.html

我无法通过startActivity方法启动Activity.我尝试了几种选择.这是一个示例代码:

package = 'com.mydomain.mypackage'
activity = '.MyActivity'
runComponent = package + '/' + activity
device.startActivity(component=runComponent)
Run Code Online (Sandbox Code Playgroud)

还尝试了以下代码:

package = 'com.mydomain.mypackage'
activity = 'com.mydomain.mypackage.MyActivity'
runComponent = package + '/' + activity
device.startActivity(component=runComponent)
Run Code Online (Sandbox Code Playgroud)

但是,似乎没有什么能够启动这项活动.我期待钱工具启动活动意味着我应该能够看到屏幕.

任何帮助将不胜感激.

谢谢.

android monkeyrunner

2
推荐指数
2
解决办法
1669
查看次数