草庐IT

single-threaded

全部标签

Android Espresso waitFor.. 和 Thread.sleep() 解决方案

我刚开始使用Espresso,在此之前我已经尝试过Robotium。我需要测试LoginActivity。逻辑是:用户输入正确的凭据;用户看到“Loggingin..”字符串;用户等待字符串消失;用户在MainActivity中并看到“您已登录”测试登录源:publicvoidtestLogin()throwsException{onView(withId(R.id.login_email)).perform(typeText(LOGIN_EMAIL));onView(withId(R.id.login_password)).perform(typeText(LOGIN_PASSWOR

android - 无法创建 "Single-action control"通知 android wear

AndroidWearUI模式显示了在AndroidWear上发出此通知的能力,但我无法找到这是如何完成的。我以为只有一个未决Intent行动。即:.extend(newNotificationCompat.WearableExtender().addAction(action));会实现这个,但是我无法获得这个View。有人知道我是否需要为此设置一个特殊标志吗?谢谢! 最佳答案 WearableExtender.setContentAction状态:Setanactionfromthisnotification'sactionst

java - 线程内线程 : what happens if parent thread is killed?

这个问题在这里已经有了答案:DoesachildthreadinJavapreventtheparentthreadstoterminate?(4个答案)关闭6年前。总的来说,我无法理解线程。就我而言,使用Java和Android。假设我有一个名为A的线程,它启动线程B。如果线程A停止,则线程B将继续存在。这怎么可能?谁现在属于线程B?到主线程?线程类publicclassParentThreadextendsThread{publicvoidrun(){Log.e("PARENTTHREAD","STARTSRUNNING");newThread(newRunnable(){@Ove

android.permission.CALL_PHONE : making single apk for phones and tablets:

我希望我的应用可用于手机和平板电脑。手机和平板电脑版本之间的唯一区别是:在“手机”版本中,我的应用程序有按钮,可以调用特定号码。我的问题是什么:为了能够打电话,我需要添加list文件的权限-此权限使应用程序与平板电脑不兼容。如果我删除权限,应用程序无法调用正在电话上启动的电话。如何制作一个同时支持手机和平板电脑并允许通过手机调用电话的应用程序? 最佳答案 Play商店中的单个应用程序可以有多个apk,很多应用程序都使用它来定制体验。如果您在Play商店页面上看到提到的Android版本各不相同,那么您就知道他们采用了这种方法。你可以

android - 在带有 RxJava : How can you keep the presenter free of any android knowledge while still observing on the UI thread? 的 Android 上使用整洁的 MVP

为了使用mvp模式在android上实现“整洁”的架构,建议将android框架视为插件,并且不要将任何android感知依赖项泄漏到演示层中。使用rxjava,如果我有一个设计用于将数据“推送”到View层的演示器,我可能希望有这样的逻辑:publicinterfaceSearchPresenter{interfaceViewLayer{voidupdateResults(ListsearchResults)}voidbind(ViewLayerviewLayer);voidunbind();}publicclassSearchPresenterImplimplementsSearc

Android 设计支持库 : TabLayout tabs text in single line

这个问题在这里已经有了答案:RemovelinebreakinTabLayout(10个答案)关闭3年前。我想将制表rune本(最多8个字符)放在一行中我为TabLayout元素添加了自定义样式@style/MyCustomTabTextAppearance1true还是不行。我也试过了

安卓 Firebase 数据库 : Single data fetch without event listener

现在,以下是我在Firebase数据库控制台中的数据库层次结构。我正在使用以下代码将数据输入到firebase数据库中。publicvoidcreateRecordInDB(PlaceListItemplaceListItem){mDB=FirebaseDatabase.getInstance().getReference();mListItemRef=mDB.child("Places");for(inti=0;iresult=newHashMap();result.put(key,placeDBModel);mListItemRef.updateChildren(result);}

android - 在 Android 中与 Thread 同时录制和处理音频

我正在编写一个小应用程序,它从androidMIC捕获音频,对输入执行FFT,然后将图表绘制成图表给用户。我正在尝试同时进行记录和绘图(很明显,从记录到绘图之间有一小段延迟)。我正在尝试启动两个线程,一个用于读取,一个用于处理。但是,当我处理似乎只接收(或不接收)零时,我遇到了同步问题。任何建议将不胜感激。:)publicclassPlotterextendsActivity{/*plottingobjects*/privatestaticGraphicalViewmView;privateLineGraphline=newLineGraph();privatebooleanrecor

android - 好设计 : Worker Threads and Activity Restarts

众所周知,Android将我们的应用程序组件(Activity、服务)置于随时被杀死的威胁之下。如果你想提供一个健壮的、无泄漏的解决方案,同时保持代码干净并解决关注点分离,这会让事情变得非常复杂。问题:一个Activity开始一个耗时的任务(以Runnable、AsyncTask或任何其他机制的形式)。应显示进度对话框。该任务将打开多个连接,但它应该具有更新进度条的方法,并且可能需要在完成中途显示一个选择对话框。它还应该能够关闭对话框并在发生错误或完成时显示Toast。当一个Activity被杀死然后重新创建一个新实例时,我可以想到两个选项:尝试终止正在运行的任务,并在创建新的替代Ac

java - Thread.sleep(x) 是否足够准确以用作 Android 中的时钟?

我有一个单独的线程在我的主类中运行。它需要每100毫秒发送一次消息,但恰好每100毫秒发送一次。我想知道它是否足够准确,可以这样使用,或者是否有其他方法可以让某些事情每秒准确发生10次。classClockRunimplementsRunnable{@Overridepublicvoidrun(){doublehourlyRate=Double.parseDouble(prefs.getString("hourlyRate",""));doubleelapsedTime=0;do{while(clockRun){doubleamount=hourlyRate/360/100*elaps