我有关于angulardart和登录流程的结构问题.我有一个服务,它与服务器进行通信,并具有login(),logout(),loggedIn()等方法.这一切都在角度很好地工作,但我正在寻找一种最佳实践方式将登录流程合并到我的应用程序中.
该应用程序要求用户登录.因此,当用户未登录时,我是否会在启动时重新路由到自定义"登录"视图?我还没有登录时切换主index.html的部分内容吗?我会创建一个处理登录的自定义组件吗?
对于这种情况,是否存在共同的角度模式?
我目前正在使用HTTPClient 4向远程服务器发出POST请求,如下所示:
HttpResponse response = httpClient.execute( request );
InputStream is = response.getEntity().getContent();
Run Code Online (Sandbox Code Playgroud)
当服务器无法访问时,在连接实际超时之前需要一段自我配置的时间.在那个periode期间,execute()是一个阻塞调用.
我正在寻找的是一种在自然超时之前取消execute()的方法,这样我运行execute()的线程就不再被阻塞,并且会正常完成.
我试过了
request.abort();
Run Code Online (Sandbox Code Playgroud)
和
httpClient.getConnectionManager().shutdown();
Run Code Online (Sandbox Code Playgroud)
但是这两个调用都不会中断execute().有没有其他方法可以取消正在进行的连接尝试?
我正在寻找一种创建 firestore 事务的方法,我从查询中找到一个文档,然后在事务中修改该文档。
沿着这些路线的东西(kotlin):
firestore.runTransaction { transaction ->
val snapshot = transaction.get(db.collection("document")
.whereEqualTo("someField", null)
.orderBy("creationDate", ASCENDING)
.limit(1L))
val myObject = snapshot.toObject(MyObject::class.java)
myObject.someFiled = "123"
transaction.set(snapshot.reference, myObject)
}
Run Code Online (Sandbox Code Playgroud)
这里的问题是该.limit(1)方法返回的查询不是 DocumentReference,这是事务接受的唯一类型。因此我的问题是,如何在 java/kotlin 中实现这样的事务?
我在这篇使用 admin sdk 的博客文章中看到了类似的内容:
return trs.get(db.collection('rooms')
.where('full', '==', false)
.where('size', '==', size)
.limit(1));
Run Code Online (Sandbox Code Playgroud) 一个对话框可以有一个相当复杂的用户界面,更像是一个浮动屏幕而不是一个典型的 AlertDialog。因此,可能希望让对话框拥有自己的对话框ViewModel并能够导航到它。使用 jetpack compose 导航工件时,代码表明NavHost.
有没有办法导航到覆盖在当前 ui 上的对话框?这与我们如何导航到片段对话框是一致的。谢谢。
我正在尝试将值转发到Android RemoteView.某些值可以通过使用反射的set方法转发.例如背景颜色有效:
rv.setInt(R.id.viewId, "setBackgroundColor", 0xffff0000);
Run Code Online (Sandbox Code Playgroud)
虽然该机制对于一个param方法调用看起来非常通用,但它对某些方法不起作用.例如.在视图上设置alpha不起作用(在api级别15上运行):
rv.setFloat(R.id.viewId, "setAlpha", 0.5f);
Run Code Online (Sandbox Code Playgroud)
框架在运行时抱怨不支持setAlpha(float).有人知道为什么会这样吗?远程视图支持的方法的规则是什么?为什么阿尔法不在他们中间?
更新:
CommonsWare的答案是正确的.经过一些更多的研究后,对于一些人来说,ImageView.setAlpha(int)是可以远程访问的.它只在图像上设置alpha,因此不适用于九个等等.但它可能对某些人有用.