moueza / openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
Duplicate class android.arch.lifecycle.AndroidViewModel found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.LiveData found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.LiveData$1 found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.LiveData$LifecycleBoundObserver found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.MutableLiveData found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.Observer found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.ViewModel found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider$Factory found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider$NewInstanceFactory found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelStore found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelStoreOwner found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.support.design.widget.CoordinatorLayout found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$1 found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$Behavior found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$DefaultBehavior found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$DispatchChangeEvent found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$HierarchyChangeListener found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$LayoutParams found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$OnPreDrawListener found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$SavedState found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$SavedState$1 found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Duplicate class android.support.design.widget.CoordinatorLayout$ViewElevationComparator found in modules design-27.0.2-runtime (com.android.support:design:27.0.2) and support-core-ui-27.1.1-runtime (com.android.support:support-core-ui:27.1.1)
Go to the documentation to learn how to Fix dependency resolution errors.
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 27.1.1, 25.2.0. Examples include com.android.support:animated-vector-drawable:27.1.1 and com.android.support:support-media-compat:25.2.0
implementation 'com.android.support:design:27.0.2'
Dependencies using groupId com.android.support and androidx.* can not be combined but found IdeMavenCoordinates{myGroupId='com.android.support', myArtifactId='support-core-ui', myVersion='27.0.2', myPacking='aar', myClassifier='null'} and IdeMavenCoordinates{myGroupId='androidx.asynclayoutinflater', myArtifactId='asynclayoutinflater', myVersion='1.0.0', myPacking='aar', myClassifier='null'} incompatible dependencies
in Firebase
To 1.8
generate on Android Studio
find by : keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
android
https://stackoverflow.com/questions/39008887/how-do-i-show-dependencies-tree-in-android-studio
gradle app:dependencies > poubDep.txt
/home/peter/POUB/openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java/FirebaseOC/app/src/main/java/com/openclassrooms/firebaseoc/MainActivity.java:97: error: cannot find symbol
showSnackBar(this.coordinatorLayout, getString(R.string.connection_succeed));
^
symbol: variable connection_succeed
location: class string
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
//grant only a user access to its own data
match /users/{userId} {
allow read, write: if request.auth.uid == userId;
}
//Allow request from authenticated users
match /chats/{document=**} {
allow read, write: if request.auth != null;
}
}
}
Compilation is not supported for following modules: app, FirebaseOC. Unfortunately you can't have non-Gradle Java modules and Android-Gradle modules in one project.
Android resource linking failed
/home/peter/POUB/openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java/FirebaseOC/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:2239: AAPT: error: resource android:attr/fontVariationSettings not found.
/home/peter/POUB/openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java/FirebaseOC/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:2239: AAPT: error: resource android:attr/ttcIndex not found.
Executing tasks: [:app:assembleDebug] in project /home/peter/POUB/openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java/FirebaseOC
Configure project :app
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
It will be removed in version 5.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
Task :app:preBuild UP-TO-DATE
Task :app:preDebugBuild UP-TO-DATE
Task :app:compileDebugAidl NO-SOURCE
Task :app:compileDebugRenderscript NO-SOURCE
Task :app:generateDebugBuildConfig UP-TO-DATE
Task :app:javaPreCompileDebug UP-TO-DATE
Task :app:checkDebugAarMetadata UP-TO-DATE
Task :app:generateDebugResValues UP-TO-DATE
Task :app:generateDebugResources UP-TO-DATE
Task :app:processDebugGoogleServices
Parsing json file: /home/peter/POUB/openclassrooms-5086986-create-a-scalable-and-powerful-backend-for-android-using-firebase-in-java/FirebaseOC/app/google-services.json
Task :app:createDebugCompatibleScreenManifests UP-TO-DATE
Task :app:extractDeepLinksDebug UP-TO-DATE
Task :app:processDebugMainManifest
Task :app:processDebugManifest UP-TO-DATE
Task :app:mergeDebugResources
Task :app:processDebugManifestForPackage UP-TO-DATE
Task :app:processDebugResources
Task :app:compileDebugJavaWithJavac
The following annotation processors are not incremental: compiler-4.3.1.jar (com.github.bumptech.glide:compiler:4.3.1), butterknife-compiler-8.8.1.jar (com.jakewharton:butterknife-compiler:8.8.1).
Make sure all annotation processors are incremental to improve your build speed.
Task :app:compileDebugSources
Task :app:mergeDebugNativeDebugMetadata NO-SOURCE
Task :app:mergeDebugShaders UP-TO-DATE
Task :app:compileDebugShaders NO-SOURCE
Task :app:generateDebugAssets UP-TO-DATE
Task :app:mergeDebugAssets UP-TO-DATE
Task :app:compressDebugAssets UP-TO-DATE
Task :app:processDebugJavaRes NO-SOURCE
Task :app:dexBuilderDebug
Task :app:checkDebugDuplicateClasses
Task :app:mergeDebugJavaResource
Task :app:mergeExtDexDebug
Task :app:mergeDebugJniLibFolders UP-TO-DATE
Task :app:validateSigningDebug UP-TO-DATE
Task :app:mergeDebugNativeLibs
Task :app:stripDebugDebugSymbols NO-SOURCE
Task :app:mergeDexDebug
Task :app:packageDebug
Task :app:assembleDebug
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.6.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 2m 6s
25 actionable tasks: 12 executed, 13 up-to-date
Build Analyzer results available
Duplicate class android.arch.lifecycle.AndroidViewModel found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.LiveData found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.LiveData$1 found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.LiveData$LifecycleBoundObserver found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.MutableLiveData found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.Observer found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and livedata-core-1.1.0-runtime (android.arch.lifecycle:livedata-core:1.1.0)
Duplicate class android.arch.lifecycle.ViewModel found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider$Factory found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelProvider$NewInstanceFactory found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelStore found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Duplicate class android.arch.lifecycle.ViewModelStoreOwner found in modules extensions-1.0.0-runtime (android.arch.lifecycle:extensions:1.0.0) and viewmodel-1.1.0-runtime (android.arch.lifecycle:viewmodel:1.1.0)
Go to the documentation to learn how to Fix dependency resolution errors.
https://developer.android.com/studio/build/dependencies#resolution_errors
#https://unix.stackexchange.com/questions/394421/install-specific-previous-version-of-package-using-snap
sudo snap info gradle
sudo snap install gradle --channel=latest/stable --classic
What is Firebase?
A platform for creating cross-platform mobile apps
A NoSQL database created by Google
Google's mobile/web platform that facilitates the creation of effective, scalable backends, devoted mainly to mobile apps V
To make it easier to create Android mobile apps
To more easily manage notifications in Android, iOS, and even the web.
To spare mobile developers the complexity of creating and maintaining a server architecture, while ensuring total scalability (up to billions of users) and simplicity of use V
-Question 3
How is a new app created in Firebase?
By deploying a Node.js project on Google's Firebase servers
By deploying our Android app on Google's Firebase servers
By simply creating a new project from Firebase's web interface V
-Question 4
What does the file "google-services.json" contain?
Configuration information about our Firebase project V
The login and password so that our Android app can access Firebase
JSON information to enable us to deserialize communications between Firebase and Android
-Question 5
Is the library Firebase-UI mandatory for using Firebase from an Android app?
Yes, otherwise it would be impossible to correctly use Firebase (backwards compatibility issue).
No, but Firebase-UI makes it a lot easier for us to integrate Firebase into an Android app. V
-Question 6
What method enables us to retrieve the user currently connected to our app?
FirebaseAuth.getInstance().getCurrentUser(); V
AuthUI.getInstance().createSignInIntentBuilder()
GetUserConnected();
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.