草庐IT

ACTIVITY

全部标签

android - Robolectric 测试不调用 textWatcher.onTextChanged

我有以下ObservableObservablesubjectObservable=WidgetObservable.text(mComposeSubject);然后呢subjectObservable.subscribe(s->onTextChange(mComposeSubject,getString(R.string.blank_warning,mComposeSubject.getHint().toString())));我还有以下Robolectric测试@TestpublicvoidtestOnTextChange_subjectChanged(){EmailActivit

java - android anonymous asyncTask - 它会导致内存泄漏吗

在android中,我试图防止内存泄漏。我继承了一些遗留代码,开发人员在其中创建了一个asyncTask作为匿名内部类,如下所示:voidstartAsyncTask(){newAsyncTask(){@OverrideprotectedVoiddoInBackground(Void...params){while(true);//looptokeepthreadaliveforever.}}.execute();}所以我在这个例子中使用了一个循环,只是为了让子线程永远保持Activity状态,这样我就可以演示我的观点。所以从Activity中如果我调用startAsyncTask()

java - 没有 onActivityResult 的 Activity 之间的 Android 通信

在我目前正在开发的应用程序中,我遇到了有关Activity之间通信的问题。基本上我有一个UI组件,它类似于Combobox。但是,此组件的可能值列表必须在新的Activity中开放。因此,当您单击该组件时,将使用startActivityForResult打开一个新的Activity。当您选择新值时,它会被放入Bundle中并返回到之前的Activity。然后,我需要使用onActivityResult方法获取所选值并将其设置到组件。这意味着,每个使用此组件的Activity都需要覆盖onActivityResult并使用新值刷新组件。相反,我想要的是,该组件负责所有这些事情,您只需注

android - 如何将 RecyclerView 的位置传递给 Activity?

我正在尝试将recyclerview的位置传递给我正在调用改造界面的另一个Activity。我可以传递Recyclerview项目的位置以便我可以从api加载不同的帖子@OverridepublicvoidonBindViewHolder(TagAdapter.Tag_ViewHolderholder,finalintposition){holder.tagName.setText(Tags.get(position));holder.itemView.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonC

java - 使用 Espresso stub 在测试 Activity 的 onCreate 期间启动的 Intents

我正在测试一个在其onCreate()期间启动另一个Activity的Activity。第二个Activity由startActivityForResult()启动,然后主Activity等待onActivityResult()。我正在尝试使用Espresso对此进行测试,尝试使用intending()对第二个Activity进行stub,并使用intended()验证它是否发生。尽管espresso-intents似乎并非设计用于处理从onCreate()方法(seethewarninginthelastparagraphshere)中启动的Intent。有没有人设法对从onCrea

android - 如何使用 Dagger Android 创建自定义范围并共享相同的实例

下面是我从doc中了解到的信息DaggerAndroid正在为每个使用ContributesAndroidInjector注释的Activity创建子组件您可以将自定义范围应用于ContributesAndroidInjector被注释为的方法如果两个同级子组件具有相同的作用域,它们仍将具有不同的作用域实例如果Activity在子组件中,它可以有自己的子组件,该子组件可以包含fragment。这些Fragment将共享Activity具有的作用域实例。现在我的问题是:如何使用DaggerAndroid让一个Activity成为另一个Activity的子组件?我想这样做是因为我想实现@U

android - 自定义选择器 Activity : SecurityException UID n does not have permission to content://uri

我正在构建一个替代原生Android共享对话框的选择器应用程序。它工作正常,除非我尝试通过长按图像>共享图像从Chrome共享图像。我发现Google+没有捕捉到异常(它崩溃了),所以我可以通过Logcat查看它:在Google上搜索图片。选择一张图片(这应该显示预览)长按图片选择“分享图片”弹出我的选择器Activity选择Google+Google+因以下错误而崩溃:java.lang.SecurityException:UID10130doesnothavepermissiontocontent://com.android.chrome.FileProvider/images/s

android - 应该如何为具有多个字段的 Activity 实现 ViewModel

问题有一个设置屏幕(SettingsActivity),其中包含大约10个文本字段和3个按钮。在onClick上打开对话框以插入/编辑文本的文本字段将其内容保存在SharedPreferences中。这些按钮执行异步请求以检索内容并保存在其他地方。在请求期间,会显示一个对话框以通知进度。初步解决方案数据存储库基本上是SharedPreferences的包装器,它有10个getter和10个setter,每个字段一个。在get[field_name]上,DataRepository从SharedPreferences获取值,在set[field_name]上,它提交给SharedPref

java - Android - 在其他 Activity 中启动多个方法

我真的是Android新手。我有一个健身应用程序,用户可以在其中更改它的健身房。有几种Activity内容取决于用户的健身房。一项Activity将展示健身房的锻炼情况,另一项Activity将展示健身房的运动员,等等......WhatIwouldlike,istoupdatealloftheseactivitieswhentheuserchangeit'sgym.我知道如何在iOS中做到这一点,我只需要添加一个观察者NotificationCenter.default.addObserver(),但我真的不知道如何在android中做到这一点。这可能吗?如果是,如何?

android - 当应用程序处于后台时,FCM Intent 与数据交付在哪里?

我已经在我的应用程序中实现了Firebase,并且正在发送带有额外数据的推送。当我的应用程序处于前台时,我正在正确处理数据并显示我自己的通知,但是当Firebase在应用程序“归属”(未终止)时“自动”显示通知时,我在获取数据时遇到了问题。根据DOCSActivity应该获得新的Intent并附加满足我的值(value)观,而不是应用程序只是回到前面,旧状态已恢复。场景:打开应用,按主页通过Firebase控制台发送推送,Firebase正在创建Notification而不调用onMessageReceived(根据文档中的表格,它应该?)当用户选择通知应用程序将以与“homed”相同