Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将具有url的对象写入firebase数据库_Android_Firebase_Url_Firebase Realtime Database - Fatal编程技术网

Android 将具有url的对象写入firebase数据库

Android 将具有url的对象写入firebase数据库,android,firebase,url,firebase-realtime-database,Android,Firebase,Url,Firebase Realtime Database,我正在尝试将一个对象(其中包括一个URL作为其属性之一)写入firebase数据库。它正在失败,错误如下 错误 这个错误更长(真的很长),但它只是重复以下步骤,然后在这里结束 位于com.google.android.gms.internal.zzeas.zzbu(未知来源) 位于com.google.android.gms.internal.zzear.zzbq(未知来源) 位于com.google.android.gms.internal.zzear.zzbt(未知来源) 位于com.goo

我正在尝试将一个对象(其中包括一个URL作为其属性之一)写入firebase数据库。它正在失败,错误如下

错误

这个错误更长(真的很长),但它只是重复以下步骤,然后在这里结束

位于com.google.android.gms.internal.zzeas.zzbu(未知来源) 位于com.google.android.gms.internal.zzear.zzbq(未知来源) 位于com.google.android.gms.internal.zzear.zzbt(未知来源) 位于com.google.android.gms.internal.zzeas.zzbu(未知来源) 位于com.google.android.gms.internal.zzear.zzbq(未知来源) 位于com.google.android.gms.internal.zzear.zzbt(未知来源) 位于com.google.android.gms.internal.zzeas.zzbu(未知来源) 位于com.google.android.gms.internal.zzear.zzbq(未知来源) 位于com.google.android.gms.internal.zzear.zzbq(未知来源) 位于com.google.android.gms.internal.zzear.zzbp(未知来源) 位于com.google.firebase.database.DatabaseReference.zza(未知来源) 位于com.google.firebase.database.DatabaseReference.setValue(未知 (来源) 在 com.companyName.appName.MyActivity.postDataToFirebase(MyActivity.java:582) 在 com.companyName.appName.MyActivity$13.onSuccess(MyActivity.java:551) 在 com.companyName.appName.MyActivity$13.onSuccess(MyActivity.java:543) 位于com.google.firebase.storage.zzj.zzi(未知来源) 位于com.google.firebase.storage.zzaa.run(未知来源) 位于android.os.Handler.handleCallback(Handler.java:751) 位于android.os.Handler.dispatchMessage(Handler.java:95) 位于android.os.Looper.loop(Looper.java:154) 位于android.app.ActivityThread.main(ActivityThread.java:6776) 位于java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)

我能够追踪到,当我将我的URL包含在我正在写入firebase的对象中时,它会崩溃,但当我忽略URL时,它不会崩溃

在我的活动中发布功能

public void postDataToFirebase() {
    Log.d(TAG, "triggering postDataToFirebase...");
    Uri myURL = https://somewebaddress.com/subpath%2Fotherpath%2FanotherPath%2FV3ipNtaGW3tG%2FhairColor%2F-Op032Dasdfie41ZB98d%2FeyeColor%2F3%2FasdfEesWEWf1341DfWds342%2FintroductionVideo.mp4?alt=media&token=a457i222l-6c6a2-2524l4-zy3m-p7384eo295d0di1;
    String greetingValue = "Hi there!";
    String timestamp = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
    Log.e(TAG, "This is the current time = " + timestamp);
    // Create HashMap of all details to post
    Map<String, Object> childUpdate = new HashMap<>();
    childUpdate.put("firstName", firstNameTextField.getText().toString());
    childUpdate.put("lastName", lastNameTextField.getText().toString());
    childUpdate.put("hairColor", hairColorTextField.getText().toString());
    childUpdate.put("greetingValue", greetingValue);
    childUpdate.put("timestamp", timestamp);
    childUpdate.put("URL", myURL);  // **NOTE: If I comment out this line, no error occurs 
    Log.d(TAG, "onSuccess: childUpdate");
    Log.d(TAG, childUpdate.toString());
    // **ISSUE: The error occurs on the line below
    myRef.child("somepath")child(userId).child("someotherpath").setValue(childUpdate);
}
public void postDataToFirebase(){
d(标记“触发postDataToFirebase…”);
Uri myURL=https://somewebaddress.com/subpath%2Fotherpath%2FanotherPath%2FV3ipNtaGW3tG%2FhairColor%2F-OP032DASDFE41ZB98D%2FeyeColor%2F3%2FASDFEEWF1341DFWDS342%2IntroductionVideo.mp4?alt=media&token=a457i222l-6c6a2-2524l4-zy3m-p7384eo295d0di1;
String greetingValue=“你好!”;
字符串时间戳=新的SimpleDataFormat(“yyyyMMddHHmmss”).format(新日期());
Log.e(标记“这是当前时间=“+时间戳”);
//创建要发布的所有详细信息的HashMap
Map childUpdate=new HashMap();
childUpdate.put(“firstName”,firstNameTextField.getText().toString());
childUpdate.put(“lastName”,lastnamextfield.getText().toString());
put(“hairolor”,hairolorTextField.getText().toString());
childUpdate.put(“greetingValue”,greetingValue);
childUpdate.put(“timestamp”,timestamp);
childUpdate.put(“URL”,myURL);//**注意:如果我注释掉这一行,则不会发生错误
Log.d(标记“onSuccess:childUpdate”);
Log.d(标记,childUpdate.toString());
//**问题:错误出现在下面的行中
myRef.child(“somepath”)child(userId).child(“someotherpath”).setValue(childUpdate);
}
Build.Gradle(应用程序)

我之所以包括这一点,是因为它是在下面提到的问题中提出的

apply插件:“com.android.application”
存储库{
jcenter()
马文{
url“https://maven.google.com"
}
}
依赖关系{
编译文件树(包括:['*.jar'],目录:“libs”)
编译“com.android.support:support-v4:25.3.1”
编译“com.android.support:support-v13:25.3.1”
编译“com.android.support:cardwiew-v7:25.3.1”
编译“com.android.support:appcompat-v7:25.3.1”
编译'com.android.support:design:25.3.1'
编译'com.android.support.constraint:constraint布局:1.0.2'
编译'com.google.firebase:firebase auth:11.4.2'
编译'com.google.firebase:firebase数据库:11.4.2'
编译'com.google.firebase:firebase崩溃:11.4.2'
编译'com.google.firebase:firebase配置:11.4.2'
编译'com.google.firebase:firebase存储:11.4.2'
编译'com.google.firebase:firebase消息:11.4.2'
编译'com.google.firebase:firebase核心:11.4.2'
编译'com.firebase:firebase作业调度程序:0.6.0'
编译'com.android.volley:volley:1.0.0'
testCompile'junit:junit:4.12'
}
列表目录=[
'main',//main示例代码;在这里查找有趣的内容。
“common”,//被多个示例重用的组件
'template']//由示例模板过程生成的样板代码
安卓{
编译DK26版
buildToolsVersion'26.0.2'
默认配置{
applicationId“com.company.appname”
明斯克版本21
targetSdkVersion 26
版本代码19
版本名称“4.8”
多索引启用真
}
编译选项{
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
源集{
主要{
dirs.each{dir->
java.srcDirs“src/${dir}/java”
apply plugin: 'com.android.application'

repositories {
    jcenter()
    maven {
        url "https://maven.google.com"
    }
}

dependencies {

    compile fileTree(include: ['*.jar'], dir: 'libs')

    compile "com.android.support:support-v4:25.3.1"
    compile "com.android.support:support-v13:25.3.1"
    compile "com.android.support:cardview-v7:25.3.1"
    compile "com.android.support:appcompat-v7:25.3.1"
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.google.firebase:firebase-auth:11.4.2'
    compile 'com.google.firebase:firebase-database:11.4.2'
    compile 'com.google.firebase:firebase-crash:11.4.2'
    compile 'com.google.firebase:firebase-config:11.4.2'
    compile 'com.google.firebase:firebase-storage:11.4.2'
    compile 'com.google.firebase:firebase-messaging:11.4.2'
    compile 'com.google.firebase:firebase-core:11.4.2'
    compile 'com.firebase:firebase-jobdispatcher:0.6.0'
    compile 'com.android.volley:volley:1.0.0'
    testCompile 'junit:junit:4.12'
}

List<String> dirs = [
        'main',     // main sample code; look here for the interesting stuff.
        'common',   // components that are reused by multiple samples
        'template'] // boilerplate code that is generated by the sample template process

android {
    compileSdkVersion 26
    buildToolsVersion '26.0.2'

    defaultConfig {
        applicationId "com.company.appname"
        minSdkVersion 21
        targetSdkVersion 26
        versionCode 19
        versionName "4.8"
        multiDexEnabled true
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

    sourceSets {
        main {
            dirs.each { dir ->
                java.srcDirs "src/${dir}/java"
                res.srcDirs "src/${dir}/res"
            }
        }
        androidTest.setRoot('tests')
        androidTest.java.srcDirs = ['tests/src']

    }


    buildTypes {
        release {
            minifyEnabled true // Enables code shrinking for the release build type.
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
        debug {
            debuggable true
        }
    }
    productFlavors {
    }

}

apply plugin: 'com.google.gms.google-services'
String myURL = "https://somewebaddress.com/subpath%2Fotherpath%2FanotherPath%2FV3ipNtaGW3tG%2FhairColor%2F-Op032Dasdfie41ZB98d%2FeyeColor%2F3%2FasdfEesWEWf1341DfWds342%2FintroductionVideo.mp4?alt=media&token=a457i222l-6c6a2-2524l4-zy3m-p7384eo295d0di1;"