也就是说,我正在构建一个自定义撰写布局并填充该列表,如下所示
val list = remember { dataList.toMutableStateList()}
MyCustomLayout{
list.forEach { item ->
key(item){
listItemCompose( data = item,
onChange = { index1,index2 -> Collections.swap(list, index1,index2)})
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,并且每当调用 onChange lambda 函数时屏幕都会重新组合,但是当涉及任何项目属性的任何微小更改时,它不会重新组合,详细说明让我们更改上面的 lambda 函数以执行以下操作
{index1,index2 -> list[index1].propertyName = true}
Run Code Online (Sandbox Code Playgroud)
让 lambda 更改列表项的属性不会触发屏幕重组。我不知道这是否是 jetpack compose 中的一个错误,或者我只是采用了错误的方法来解决这个问题,我想从 Android 开发团队那里知道正确的方法。这就是让我问是否有办法强制重组整个屏幕的原因。
android android-layout android-studio android-jetpack-compose
我已将我的应用 APK 上传到谷歌并启用应用签名密钥让谷歌注册我的应用。现在,我需要 Facebook 请求的部署密钥哈希,我确实下载了用于生成指纹的 deployment_cert.der 文件,但我没有知道如何通过 facebook 计算所需的密钥哈希。请不要告诉我如何从密钥库生成密钥哈希,因为我已经为测试目的生成了密钥哈希,我想知道的是发布版本的密钥哈希我的应用 APK 由 google 签名。
将 firebase 存储更新到最新版本 16.0.1 后,我开始出现此错误。我没有更改代码中的任何内容我只是在升级 gradle 构建依赖项后收到此错误
uploadTask.addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if (task.isSuccessful()) {
Uri downloadUri = task.getResult().getStorage().getDownloadUrl().getResult();
if (downloadUri == null)
return ;
downloadUriArray.add(String.valueOf(downloadUri));
singleAdImageArrayList.get(uriIndex).setUploading(false);
singleAdImageArrayList.get(uriIndex).setImgDownloadUri(downloadUri);
singleAdImageArrayList.get(uriIndex).setSent(true);
singleAdImageArrayList.get(uriIndex).setHasLocalUri(false);
sendImagesUpdateToActivity();
checkCompletion();
Toast.makeText(getApplicationContext(), "sent successfully", Toast.LENGTH_LONG).show();
return ;
}else {
singleAdImageArrayList.get(uriIndex).setUploading(false);
singleAdImageArrayList.get(uriIndex).setFailUploading(true);
sendImagesUpdateToActivity();
failuresCounter++;
if (task.getException() != null && task.getException().getMessage() != null) {
Log.d(TAG, "onComplete: failed exception: " + task.getException().getMessage());
QuickToastUtil.makeToast(getApplicationContext(), getString(R.string.network_error), false);
}
checkCompletion();
return ;
}
}
});
Run Code Online (Sandbox Code Playgroud) 我已经部署了数百个函数,这是我第一次遇到这个问题。简单地说,它停止部署功能进程,说:
未处理的错误清理构建映像。如果不纠正,这可能会导致每月的小额账单。您可以尝试通过重新部署来删除这些图像,也可以通过https://console.cloud.google.com/gcr/images/[project-name]/us/gcf手动删除它们
我部署的方式是通过 Firebase CLI 命令:firebase deploy --only functions:nameOfFunction
问题是我必须删除的那些图像是什么?为什么?我该如何解决?
不幸的是,我遇到了云函数的无限循环,它从昨天开始就在不停地执行,请不要告诉我如何避免这个问题,因为我完全意识到这一点,但我错误地遇到了这个问题,我只是想要知道为什么firebase团队还没有开发出一种方法让开发人员强制终止此类功能。
我正在考虑将api提供商的数据(新闻)导入Firebase实时数据库的移动应用程序项目,以便以后当用户搜索新闻时,他们会从我的Firebase数据库中获取它.问题是,我可以通过使用云功能来完成这项工作吗?如果没有,请您提供替代方案,为什么?