لغات أخرى: اللغة الإنجليزية
يهدف هذا المشروع إلى أن يكون قالبًا أساسيًا أو بداية لبدء مشروع مع Flutter و Firebase بسرعة.
يتكون الرهان من شاشتين: تسجيل الدخول والمنزل
على هذه الشاشة ، يمكن للمستخدم:
الشاشة التي وصلنا مرة واحدة تم تحديدها والتي تسمح لنا بإنهاء الجلسة.
يقوم التطبيق أيضًا بإنشاء مستند في قاعدة البيانات التي تسمى النشاط الذي يتم فيه حفظ وقت المستخدم ومعرفه في كل مرة تقوم فيها بتسجيل الدخول.
الهدف من هذا المشروع هو إظهار استخدام الرفرفة مع Firebase لإنشاء تطبيق بسرعة مع الواجهة الخلفية لإدارة المستخدمين والمصادقة وقاعدة بيانات لتخزين المعلومات.
تثبيت رفرفة على فريق التطوير:
https://flutter.dev/docs/get-started/install/macos
تأكد من أن لدينا Android Studio و Xcode مثبتة:
Xcode تنزيل
تنزيل Android Studio (لـ Mac)
بمجرد التثبيت ، تحقق من التثبيت مع:
flutter doctor
git clone [email protected]:ramoncardena/flutter-firebase-starter.git flutter-firebase-starter
cd flutter-firebase-starter
flutter packages get
نفتح مشروع iOS في Xcode: ~/flutter-firebase-starter/ios
في بنية المشروع ، نختار عداء الجذر وفي القسم العام في قسم الهوية ، نحدد معرف الحزمة ( معرف الحزمة ) والإصدار ( الإصدار ).
ثم نذهب إلى قسم التوقيع والقدرات وفي قسم التوقيع ، نختار المعدات المناسبة ( الفريق ) لتوقيع المشروع.
دعنا نذهب إلى مجلد المشروع حيث يتم تعريف التخرج للتطبيق في: ~/flutter-firebase-starter/android/app/build.gradle
ونقوم بتعديل قسم DefaultConfig مع معرف التطبيق ( ApplicationID ) ونضع الحد الأدنى من الإصدار من SDK ( minsdkversion ) إلى 21
defaultConfig {
applicationId "com.ramoncardena.firebasestarter"
minSdkVersion 21
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
سنجد المعلومات التفصيلية باللغة الإنجليزية ، في هذه المقالة.
نذهب إلى وحدة التحكم في Firebase.
نقوم بإنشاء مشروع جديد وبمجرد إنشائه ، نضيف تطبيقين ، واحد Android و iOS آخر.
نقوم بإنشاء تطبيق iOS جديد من وحدة التحكم Firebase ونملأ البيانات الأساسية.
ثم نقوم بتنزيل ملف تكوين googleservice-info.plist .
هام: نفتح Xcode ومع الزر الأيمن على المجلد العداء/العداء ، أضف ملف تكوين FireBase و Xcode مغلق.
بالإضافة إلى ذلك ، للمصادقة مع تسجيل الدخول إلى Google ، يتعين علينا إضافة المفتاح المقابل إلى ملف ios/Runner/Info.plist :
<!-- Google Sign-in Section -->
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<!-- TODO Replace this value: -->
<!-- Copied from GoogleService-Info.plist key REVERSED_CLIENT_ID -->
<string>com.googleusercontent.apps.861823949799-vcuujjn0vvnmcvjppkn</string>
</array>
</dict>
</array>
<!-- End of the Google Sign-in Section -->
نقوم بإنشاء تطبيق Android جديد من وحدة التحكم Firebase مع البيانات الأساسية.
لإضافة مفتاح توقيع SHA ، من محطة نذهب إلى مجلد المشروع وننفذ:
keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
(ككلمة مرور نستخدمها android )
من هذا الجزء تم تنفيذه بالفعل في المشروع ، إنه مفيد فقط
ثم نقوم بتنزيل ملف Google-Services . الإعدادات ونسخها إلى مجلد المشروع: android/app .
بمجرد نسخ الملف ، يتعين علينا تكوين التخرج للعمل مع Firebase. نقوم بتحريره في المقام الأول android/build.gradle :
buildscript {
repositories {
// Check that you have the following line (if not, add it):
google() // Google's Maven repository
}
// ...
dependencies {
// ...
// Add the following line:
classpath 'com.google.gms:google-services:4.3.3' // Google Services plugin
}
}
allprojects {
// ...
repositories {
// Check that you have following line (if not, add it):
google() // Google's Maven repository
// ...
}
}
android/app/build.gradle :
dependencies {
// ...
}
// Add the following line to the bottom of the file:
apply plugin: 'com.google.gms.google-services' // Google Play services Gradle plugin
أخيرًا ، نقوم بتحرير ملف android/gradle.properties ونضيف:
android.useAndroidX=true
android.enableJetifier=true
أخيرا ننفذ:
flutter packages get
بمجرد تعديل المعرف ، نتحقق من تنفيذ التطبيق المثبت حديثًا في النظامين (نقوم بتوصيل هاتف Android و iPhone:
flutter packages get
flutter run -d all
(أو بدء المشروع من Android Studio)
تم تنفيذ هذا الجزء بالفعل في المشروع ، إنه مفيد فقط
نضيف المكونات الإضافية التي نحتاجها إلى Firebase في pubspec.yaml في قسم الاعتماد :
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
## AQUÍ DEPENDENCIAS FIREBASE Y OTRAS...
firebase_core: ^0.4.1+5
firebase_analytics: ^5.0.6
cloud_firestore: ^0.12.10
firebase_auth: ^0.14.0+9
google_sign_in: ^4.0.14
rxdart: ^0.22.6
provider: 2.0.0+1
font_awesome_flutter: 8.4.0
بمجرد تعريف الإضافات ، نقوم بتثبيتها:
flutter packages get
وننفذ التطبيق لنرى أن كل شيء يعمل:
flutter run -d all
يمكنك معرفة المزيد عني على موقع الويب الخاص بي أو قراءة مقالاتي على المدونة