在我的 flutter 项目中,我的 cloud firestore 开始导致编译错误。我重新开始了一个没有代码的项目,只是带来了我的依赖。但是我仍然有同样的错误:
/home/jeremy/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.9.13/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java:171: error: cannot find symbol
query = query.whereArrayContains(fieldName, value);
^
symbol: method whereArrayContains(String,Object)
location: variable query of type Query
/home/jeremy/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.9.13/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java:627: error: cannot find symbol
builder.setTimestampsInSnapshotsEnabled(
^
symbol: method setTimestampsInSnapshotsEnabled(Boolean)
location: variable builder of type Builder
/home/jeremy/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.9.13/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java:707: error: cannot find symbol
return FieldValue.arrayUnion(toArray(readValue(buffer)));
^
symbol: method arrayUnion(Object[])
location: class FieldValue
/home/jeremy/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.9.13/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java:709: error: cannot find symbol
return FieldValue.arrayRemove(toArray(readValue(buffer)));
^
symbol: method arrayRemove(Object[])
location: class FieldValue
Note: /home/jeremy/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.9.13/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
4 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':cloud_firestore:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 2s
Finished with error: Gradle task assembleDebug failed with exit code 1
我的依赖
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
firebase_core: ^0.3.4
firebase_auth: ^0.8.4+2
cloud_firestore: ^0.9.13
firebase_storage: ^2.1.0+1
firebase_ml_vision: ^0.7.0
firebase_analytics: ^2.1.1
device_info: ^0.4.0+1
cached_network_image: ^0.7.0
image_picker: ^0.5.2
shared_preferences: ^0.5.1+2
google_sign_in: ^4.0.1+3
connectivity: ^0.4.2+2
cupertino_icons: ^0.1.2
build.gradle:
buildscript {
ext.kotlin_version = '1.2.71'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.2.0'
}
}
allprojects {
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.google.firebase') {
details.useVersion "15.+"
}
}
}
repositories {
google()
jcenter()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
task clean(type: Delete) {
delete rootProject.buildDir
}
app/build.gradle :
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
compileSdkVersion 28
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.youpa.youpa"
minSdkVersion 16
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.google.firebase:firebase-auth:16.2.0'
}
apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
I tried to follow the information in other posts, but it did not work for me. I a on linux, I use Android Studio.
我的 flutter 医生:
[✓] Flutter (Channel master, v1.4.12-pre.27, on Linux, locale en_US.UTF-8) • Flutter 版本 1.4.12-pre.27 在/home/jeremy/FlutterSDK/flutter • 框架修订 a12c5618de(5 小时前),2019-04-08 11:22:19 -0400 • 引擎版本 ff1bcdc009 • Dart 版本 2.2.1(构建 2.2.1-dev.3.0 无)
[✓] Android 工具链 - 为 Android 设备开发(Android SDK 版本 28.0.3) • Android SDK 位于/home/jeremy/Android/Sdk • Android NDK 位置未配置(可选;对 native 分析支持很有用) • 平台 android-28,构建工具 28.0.3 • Java 二进制文件位于:/home/jeremy/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/182.5314842/jre/bin/java • Java 版本 OpenJDK 运行时环境 (build 1.8.0_152-release-1248-b01) • 接受所有 Android 许可。
[✓] Android Studio(版本 3.2) • 位于/opt/android-studio 的Android Studio • Flutter 插件版本 31.3.1 • Dart 插件版本 181.5656 • Java 版本 OpenJDK 运行时环境 (build 1.8.0_152-release-1248-b01)
[✓] Android Studio(版本 3.3) • Android Studio 位于/home/jeremy/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/182.5314842 • Flutter 插件版本 34.0.1 • Dart 插件版本 182.5215 • Java 版本 OpenJDK 运行时环境 (build 1.8.0_152-release-1248-b01)
[✓] 已连接设备(可用 1 个) • SM J530F • 52007a75eaa9b403 • android-arm • Android 8.1.0 (API 27)
• 未发现问题!
提前致谢。 杰里米。
最佳答案
为了解决我的问题,我添加了:
在 android/app/build.gradle 中:
android {
compileSdkVersion 28
defaultConfig {
minSdkVersion 21
targetSdkVersion 28
multiDexEnabled true
}
}
在 android/gradle.properties 中:
android.useAndroidX=true
android.enableJetifier=true
在 android/build.gradle 中:`
subprojects {
project.evaluationDependsOn(':app')
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:deprecation" << "-Xlint:unchecked"
}
}
project.configurations.all {
resolutionStrategy.eachDependency { details ->
if (details.requested.group == 'androidx.core' &&
!details.requested.name.contains('androidx')) {
details.useVersion "1.0.1"
}
}
}
}
关于Firebase Cloud Firestore 生成编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55581252/
我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看rubyzip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d
大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje
在MRIRuby中我可以这样做:deftransferinternal_server=self.init_serverpid=forkdointernal_server.runend#Maketheserverprocessrunindependently.Process.detach(pid)internal_client=self.init_client#Dootherstuffwithconnectingtointernal_server...internal_client.post('somedata')ensure#KillserverProcess.kill('KILL',
我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A
我遵循MichaelHartl的“RubyonRails教程:学习Web开发”,并创建了检查用户名和电子邮件长度有效性的测试(名称最多50个字符,电子邮件最多255个字符)。test/helpers/application_helper_test.rb的内容是:require'test_helper'classApplicationHelperTest在运行bundleexecraketest时,所有测试都通过了,但我看到以下消息在最后被标记为错误:ERROR["test_full_title_helper",ApplicationHelperTest,1.820016791]test
我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c
我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file
我克隆了一个rails仓库,我现在正尝试捆绑安装背景:OSXElCapitanruby2.2.3p173(2015-08-18修订版51636)[x86_64-darwin15]rails-v在您的Gemfile中列出的或native可用的任何gem源中找不到gem'pg(>=0)ruby'。运行bundleinstall以安装缺少的gem。bundleinstallFetchinggemmetadatafromhttps://rubygems.org/............Fetchingversionmetadatafromhttps://rubygems.org/...Fe
在Cooper的书BeginningRuby中,第166页有一个我无法重现的示例。classSongincludeComparableattr_accessor:lengthdef(other)@lengthother.lengthenddefinitialize(song_name,length)@song_name=song_name@length=lengthendenda=Song.new('Rockaroundtheclock',143)b=Song.new('BohemianRhapsody',544)c=Song.new('MinuteWaltz',60)a.betwee
我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie