jjzjj

ResultReceiver

全部标签

android - 错误 : Program type already present: android. 支持.v4.os.ResultReceiver

当我尝试将我的应用程序连接到Firebase时出现此错误。下面是app/build.gradle中的依赖dependencies{implementationfileTree(dir:'libs',include:['*.jar'])implementation'androidx.appcompat:appcompat:1.0.0-alpha1'implementation'androidx.constraintlayout:constraintlayout:1.1.0'testImplementation'junit:junit:4.12'androidTestImplementat

android - 如何在 Android 上使用 IntentService 实现回调?

是否必须用AIDL实现?请提供示例,谢谢。编辑:有几种解决方案,有谁知道哪个更好? 最佳答案 您可能正在寻找ResultReceiver类(http://developer.android.com/reference/android/os/ResultReceiver.html)。您扩展它,将其与您调用Service的Intent一起传递(它是可打包的),然后当您的任务在Service中完成时,您调用ResultReceiver的onReceiveResult()方法和结果。 关于and

android - 为什么android.arch.navigation 会导致Program type already present : android. support.v4.os.ResultReceiver$1?

我使用的是AndroidStudio版本AndroidStudio3.2Canary14Build#AI-181.4668.68.32.4763614,builtonMay4,2018JRE:1.8.0_152-release-1136-b02x86_64JVM:OpenJDK64-BitServerVMbyJetBrainss.r.oMacOSX10.11.6在调查新的架构导航组件android.arch.navigation时,我遇到了这个构建失败。AGPBI:{"kind":"error","text":"Programtypealreadypresent:android.sup

android - ResultReceiver 无法幸免于屏幕旋转

我正在Android中实现REST客户端。我看到了一个示例,该示例使用Service执行与服务器的连接,并且ResultReceiver会收到操作完成通知。我正在从fragment调用服务,如果我在服务运行时尝试旋转屏幕,ResultReceiver中的getActivity()方法将返回null,因为该fragment可能不再处于布局中。fragment中的回调方法:@OverridepublicvoidonReceiveResult(intresultCode,BundleresultData){Responseresponse=(Response)resultData.getSe

android - 如果 Android ResultReceiver 回调作为 Parcelable 通过 Bundle 传递,它如何工作?

我已将ResultReceiver从我的Activity传递到我的服务。Activity代码示例将ResultReceiver传递到我的服务,以便服务可以对Activity进行回调:ResultReceiverreceiver=newResultReceiver(newHandler()){protectedvoidonReceiveResult(intresultCode,BundleresultData){//processresults}}IntentinstructionServiceIntent=newIntent(context,InstructionService.cla

java - JUnit如何测试IntentService

我是Android测试的新手,我想测试一个IntentService,我目前正在扩展ServiceTestCase。我正在尝试使用ResultReceiver,但问题是OnReceiveResult从未在测试用例中调用。(我还尝试使用newHandler()作为null的参数insetad创建ResultReceiver,但结果相同。我做错了什么?测试IntentService的正确方法是什么?这是服务:publicclassMyServiceextendsIntentService{publicMyService(){super("MyService");}publicMyServi

android - LeakCanary 发现 Android WebView 内存泄漏

我一直在使用工具leakcanary发现我的应用程序中的内存泄漏。似乎我的WebViewActivity每次都会泄漏。我创建了一个简单的应用程序来测试泄漏。我在xml布局文件中启动一个带有WebView的Activity/使用Activity上下文进行膨胀。Js关闭。一切都默认期望一个简单的webViewClient在WebView中保持重定向。每次都漏水。我做了很多研究,防止这种情况的唯一方法是用另一个进程启动WebViewActivity并在onDestroy中将其终止。但这种方法有其自身的缺点。在我所有运行5.0+的设备上每次都会发生泄漏,尚未检查4.3及以下版本。泄漏信息粘贴在

java - 当我将 IntentService 与 ResultReceiver 一起使用时,当我的 Activity 被销毁时会发生什么

我通过网络搜索找到了这个答案。但是没有找到结果。抱歉,我是Java和Android编程的新手。我会详细说明我的问题。假设我的Activity启动了一个IntentService并且它在后台独立运行。该服务“订阅”了ResultReceiver的回调以更新ActivityUI。并且在服务执行长时间运行的过程期间,Activity被销毁。那么,如果服务通过ResultReceiver向Activity发送回复或进度更新,会发生什么?因为据我所知,ResultReceiver需要有一个Activity的引用。在我的项目中,我需要开发一个视频剪辑消息传递应用程序。当用户捕获视频时,它会将数据传

android - ResultReceiver.send 只能从同一个库组调用

我有一个使用android.support.v4.os.ResultReceiver传递数据的IntentService。在IntentService中,当我使用ResultReceiver.send方法发回结果时,AndroidStudio显示一条错误消息ResultReceiver.sendcanonlybecalledfromsamelibrarygroup(groupId=com.android.support)我在调用ResultReceiver的构造函数时收到类似的消息。但即使出现此错误,代码也能运行。这在我将支持库版本升级到25.1.1后开始出现。我应该怎么做才能解决这个

Android ResultReceiver 跨包

我在包A(SignerClient)中有一个Activity,在包B(MyService)中有一个服务Activity的结果接收者:privateResultReceiverresultreceiver=newResultReceiver(null){@OverrideprotectedvoidonReceiveResult(intresultCode,BundleresultData){...}};启动服务:Intentintent=newIntent("com.example.STARTSERVICE");intent.putExtra("resultreceiver",resul