FirebaseUI Раздувание исключения - PullRequest
0 голосов
/ 14 марта 2019

Здравствуйте. Я пытаюсь использовать Firebase-UI 4.3.1 в своем мобильном приложении для Android, которое я создаю с помощью движка Godot.Я уже успешно использую API Firebase-Firestore в своем приложении.Я собираю весь движок Godot с моими маленькими модулями Java и запускаю приложение.Однако Firebase-UI 4.3.1 (я тоже пробовал 4.3.0) не работает правильно, когда приложение работает.Я хочу поддерживать методы входа в систему для Facebook, Gmail и электронной почты.Первые две опции работают правильно, но когда я нажимаю кнопку «Войти по электронной почте», приложение вылетает со следующими ошибками:

java.lang.RuntimeException: Unable to start activity ComponentInfo{org.godotengine.bacterio/com.firebase.ui.auth.ui.email.EmailActivity}: android.view.InflateException: Binary XML file line #34: Binary XML file line #34: Error inflating class android.support.design.widget.TextInputLayout

Caused by: android.view.InflateException: Binary XML file line #34: Binary XML file line #34: Error inflating class android.support.design.widget.TextInputLayout

Caused by: android.view.InflateException: Binary XML file line #34: Error inflating class android.support.design.widget.TextInputLayout

Caused by: android.content.res.Resources$NotFoundException: Drawable org.godotengine.godot:drawable/design_password_eye with resource ID #0x7f07008f

Caused by: android.content.res.Resources$NotFoundException: File res/drawable-v21/design_password_eye.xml from drawable resource ID #0x7f07008f

Я пробовал разные версии com.android.support. * Библиотеки, такие как 27.1.1Я пробовал разные версии SDK, но ничего не помогло.Я думал, что ресурсы не были правильно добавлены в apk, когда multiDex использовался для объединения с Godot, но после проверки сгенерированного файла APK resources.arsc и APK я могу увидеть те, которые упоминаются по ошибке.Поэтому я не уверен, являются ли ресурсы реальной проблемой здесь или нет. RES

Вот файл сборки и манифест apk, который я успешно строю:

buildscript {
	repositories {
			maven {
	url 'https://maven.google.com'
	}

		jcenter()
	}
	dependencies {
		classpath 'com.android.tools.build:gradle:2.3.3'
				classpath "com.google.gms:google-services:4.0.1"

	}
}

apply plugin: 'com.android.application'

allprojects {
    repositories {
		maven {
	url 'https://maven.google.com'
	}

    	jcenter()
	mavenCentral()
	google()
    }
}

dependencies {
	compile 'com.android.support:support-v4:28.0.0'
	compile ('com.firebaseui:firebase-ui-auth:4.3.1'){exclude group: 'com.android.support' exclude module: 'appcompat-v7' exclude module: 'support-v4'}
	compile 'com.google.android.gms:play-services-auth:16.0.0'
	compile 'com.facebook.android:facebook-android-sdk:4.33.0'
	compile 'com.twitter.sdk.android:twitter-core:3.1.1'
	compile 'com.google.firebase:firebase-core:16.0.7'
	compile 'com.google.firebase:firebase-database:16.0.6'
	compile 'com.google.firebase:firebase-firestore:17.0.1'
	compile ('com.android.support:appcompat-v7:28.0.0'){force = true}
	compile ('com.android.support:support-v4:28.0.0'){force = true}
	compile ('com.android.support.constraint:constraint-layout:1.1.3'){force = true}
	compile ('com.android.support:design:28.0.0'){force = true}
	compile 'com.android.support:multidex:1.0.3'
	
}

android {

	lintOptions {
		abortOnError false
		disable 'MissingTranslation'
	}

	compileSdkVersion 28
	buildToolsVersion "28.0.3" 
	useLibrary 'org.apache.http.legacy'

	packagingOptions {
		exclude 'META-INF/LICENSE'
		exclude 'META-INF/NOTICE'
	}
	defaultConfig {
		generatedDensities = []
		applicationId 'org.godotengine.godot'
		targetSdkVersion 27
		multiDexEnabled true
		minSdkVersion 18
		
	}
	// Both signing and zip-aligning will be done at export time
	buildTypes.all { buildType ->
		buildType.zipAlignEnabled false
		buildType.signingConfig null
	}
	sourceSets {
		main {
			manifest.srcFile 'AndroidManifest.xml'
			java.srcDirs = ['src'
				,'/home/user/godot/godot-3.0.6-stable/modules/projectx_auth/src','/home/user/godot/godot-3.0.6-stable/modules/projectx_db/src','/home/user/godot/godot-3.0.6-stable/modules/projectx_gps/src'
			]
			res.srcDirs = [
				'res'
				,'/home/user/godot/godot-3.0.6-stable/modules/projectx_auth/res'
			]
			aidl.srcDirs = [
				'aidl'
				
			]
			assets.srcDirs = [
				'assets'
				
			]
		}
		debug.jniLibs.srcDirs = [
			'libs/debug'
			
		]
		release.jniLibs.srcDirs = [
			'libs/release'
			
		]
	}
	applicationVariants.all { variant ->
		// ApplicationVariant is undocumented, but this method is widely used; may break with another version of the Android Gradle plugin
		variant.outputs.get(0).setOutputFile(new File("${projectDir}/../../../bin", "android_${variant.name}.apk"))
	}
}

apply plugin: "com.google.gms.google-services"

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
	  package="com.godot.game"
      android:versionCode="1"
      android:versionName="1.0"
      android:installLocation="auto"
      >
<supports-screens android:smallScreens="true"
                      android:normalScreens="true"
                      android:largeScreens="true"
                      android:xlargeScreens="true"/>

    <application android:label="@string/godot_project_name_string" android:icon="@drawable/icon" android:allowBackup="false" android:name="android.support.multidex.MultiDexApplication"
 >
        <activity android:name="org.godotengine.godot.Godot"
                  android:label="@string/godot_project_name_string"
                  android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
                  android:launchMode="singleTask"
                  android:screenOrientation="landscape"
                  android:configChanges="orientation|keyboardHidden|screenSize|smallestScreenSize"
                  android:resizeableActivity="false">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
	<service android:name="org.godotengine.godot.GodotDownloaderService" />






    </application>
    <uses-feature android:glEsVersion="0x00030000" android:required="true" />



<uses-sdk android:minSdkVersion="18" android:targetSdkVersion="28"/>

</manifest>

Любая помощь и совет, что попробовать, будут действительно оценены.

1 Ответ

0 голосов
/ 17 марта 2019

Для тех, у кого возникла эта проблема, я смог ее решить.Вы можете найти, как здесь и какова была основная причина разрешение проблемы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...