如何将MotionEvent停机时间与时钟进行比较,时间基准是多少?

我正在尝试确定一个MotionEvent与我的UI对象中定期发生的事件的时间顺序。 private var rotateFinishTime: Long = -1 …. fun somethingHappensPeriodically() { Log.d(tag_, "show new round") … this.rotateFinishTime = SystemClock.elapsedRealtime() } 我附加了一个GestureDetector.OnGestureListener: override fun onSingleTapConfirmed(gd: GestureDetector, e: MotionEvent): Boolean { // for tap: since it comes delayed, have to check event time if (e.downTime < this.rotateFinishTime || this.rotating) { Log.d(tag_, "e.downTime: $e.downTime rotateFinishTime: $rotateFinishTime downTime – […]

Firebase-firestore不能使用两个文档

所以我开始乱七八糟的,我有一个问题: 当我添加第二个文件到我的collection , spinner我已经停止加载信息和应用程序崩溃 。 db.collection("KitList").get().addOnSuccessListener { snapshot -> for (document in snapshot.documents) { val data = document.data val skipRope = data["rope"] as String spinnerArray.add(skipRope) val kettle = data["kettle"] as ArrayList<String> for (item in kettle) { val kettleWeight = "kettle $item" spinnerArray.add(kettleWeight) } } spinnerArrayAdapter.notifyDataSetChanged() } 我知道,最有可能是因为在我的代码我只是设置负载是从我的集合,但我试图做一些像 `db.collection("KitList").document(documentName).get().addOnSuccessListener { snapshot ->` 但它没有工作。

运行测试时如何禁用Fabric

运行测试时,如何禁用Fabric:Crashlytics和Answer? 有没有其他的方式来在测试期间禁用Crashlytics,而不是在每次测试之前放置这些代码? @LargeTest @RunWith(AndroidJUnit4::class) class AcceptanceTest { @Before fun setUp() { val crashlyticsKit = Crashlytics.Builder() .core(CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build()) .build() Fabric.with(InstrumentationRegistry.getContext(), crashlyticsKit) } } 并避免把像IS_TEST_MODE一样的全局布尔值

kodein – 注入的数据值不是数据的值检索

在我的CallType类中,我把注入的数据connectivityState.callBackState为true,在ConnectivitySte类中初始化为false。 但是在我的IncomingCallBroadcastReceiver类中,我的布尔数据callBackState不是true而是false 。 class CallType { val kodein = Kodein { bind<ConnectivityState>() with provider { ConnectivityState() } } private val connectivityState: ConnectivityState = kodein.instance() fun call(number: String) { //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\\ connectivityState.callBackState = true } class IncomingCallBroadcastReceiver : KodeinBroadcastReceiver() { private val connectivityState: ConnectivityState by instance() override fun onBroadcastReceived(context: Context, intent: Intent) { //!!!!!!!!!!!!!! IT'S FALSE HERE […]

如何将Android的对象数组传递给React Native?

我试图从原生Android传递数据到React Native。 数据是由应该调度的动作组成的对象数组。 例 { "actions: [ { "authenticationType: "strong", "type: "AUTHENTICATION_URL", "url: "https://foo.bar/", }, ], } 我试图使用com.facebook.react.bridge.Arguments类来做类似的事情 val arguments = Arguments.createMap().apply { putString("path", "general/authentication") putArray("actions", Arguments.fromList(listOf( mapOf("authenticationType" to "strong", "type" to "AUTHENTICATION_URL", "url" to url )))) } 但只会导致 09-14 20:08:53.996 10437 10437 I zygote : Thread[1,tid=10437,Native,Thread*=0xb18da000,peer=0x73d2f568,"main"] recursive attempt to load library "/data/app/com.getdreams-MO6VYrPeHVgAkBP2ori8SA==/lib/x86/libfb.so" 不确定如何创建javascript对象的数组。 有没有人有任何建议如何可能更好地使用com.facebook.react.bridge.Arguments […]

用消息“此处不允许的方法”来改写响应代码405

我正在使用改造,我有一个职位请求 interface NetworkApi { @Headers("Content-Type: application/json") @POST("/") fun startLoginRequest(@Body loginModel : LoginModel) : Call<BaseResponseModel> class Factory { var retrofit = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create()) .build() companion object{ fun getApi (): NetworkApi { val serverApi = NetworkApi.Factory() val api = serverApi.retrofit.create(NetworkApi::class.java) return api } } } } 当我使用这个方法和响应方法时,调用响应体总是空的。 fun startLoginRequest(){ val api = NetworkApi.Factory.getApi() val request = […]

线程未按顺序依次运行

我期望输出为0 0 1 1 2 2 …但是输出是0 1 2 3 … 0 1 2 3 class Runner: Thread() { override fun run() { var i = 0 while (i < 10) { println("${Thread.currentThread().name} $i") i++ } try { Thread.sleep(100) } catch (e: Exception) { e.printStackTrace() } } } fun main(args: Array<String>) { val nah = […]

用关闭的交易来写Realm Daos

我们已经开始将Realm集成到我们的android项目中,并遇到了一个小问题。 我们已经用“领域”重写了我们的道,例如: public class RealmAuthDao { public static RealmAuthToken getAuthToken() { Realm realm = RealmFactory.getAuthInstance(); RealmAuthToken token = realm.where(RealmAuthToken.class).findFirst(); return token; } 但每隔几分钟就有以下例外 – “不可恢复的错误。在io_realm_internal_SharedGroup.cpp中打开的文件过多” 我们已经意识到,我们需要关闭在应用程序中打开的每个领域实例,所以我们尝试了这个: public class RealmAuthDao { public static RealmAuthToken getAuthToken() { Realm realm = RealmFactory.getAuthInstance(); RealmAuthToken token = realm.where(RealmAuthToken.class).findFirst(); realm.close // close the instance we were using return token; } 但是,当我们这样做的时候,每当我们试图访问我们查询的对象的成员或属性时,它就变成无效的,并抛出下面的异常: […]

Quasar和Comsat是否值得取代Ktor?

我希望这个问题值得回答和问好! 我有几个使用Ktor的项目。 我已经研究过Quasar,我知道Comsat有Web后端。 如你所知,Ktor使用光纤和NIO! 有了这个通知,用Quasar(Comsat)重写项目是否使它们比Ktor更好(明显)好?

JUnit5在课堂上进行参数化测试

是否有可能使用JUnit5的参数化新功能来运行测试类来接收测试参数,而不是在方法级别执行? 使用JUnit 4,像@RunWith(Parameterized::class)加继承这样的runner可以用来传递一个参数数组到子类,但是我不确定是否有可能实现一些相同的东西,但是使用新的JUnit 5 api。