הוסף כל ספריית GitHub ל- Android Studio, באמצעות Maven, JCenter ו- JitPack

מְחַבֵּר: Lewis Jackson
תאריך הבריאה: 13 מאי 2021
תאריך עדכון: 1 יולי 2024
Anonim
הוסף כל ספריית GitHub ל- Android Studio, באמצעות Maven, JCenter ו- JitPack - אפליקציות
הוסף כל ספריית GitHub ל- Android Studio, באמצעות Maven, JCenter ו- JitPack - אפליקציות

תוֹכֶן


מעט מאוד פרויקטים של אנדרואיד הם אי! לרוב פרויקטים אנדרואיד יש תלות במספר רכיבים אחרים, כולל ספריות אנדרואיד של צד שלישי.

ספריית Android מכילה אותם קבצים שתמצאו בפרויקט אנדרואיד רגיל, כגון קוד מקור, משאבים ומניפסט. עם זאת, במקום להרכיב לערכת חבילות אנדרואיד (APK) שיכולה לפעול במכשיר אנדרואיד, ספריה מאגדת לארכיון קוד שתוכל להשתמש בהם כתלות בפרויקט. ספריות אלה מעניקות לך גישה למגוון רחב של פונקציונליות נוספת, כולל כמה תכונות שאינן כלולות בפלטפורמת אנדרואיד וניל.

אחד המקומות הטובים ביותר למצוא ספריות אנדרואיד הוא GitHub. עם זאת, קבלת ספריה מדף ה- GitHub שלה ופרויקט זה אינה תמיד פשוטה, במיוחד מכיוון שיש כמה מאגרי מידע שונים שמפתחים יכולים להשתמש בהם כדי להפיץ את הפרויקטים שלהם ב- GitHub - וייתכן שלא תמיד ברור באיזה מאגר מפתח משתמש!

במאמר זה אני הולך להראות לך כיצד לייבא כל ספרייה שתגלה ב- GitHub לפרויקט אנדרואיד שלך, ללא קשר אם ברצונך להוסיף את הספריה כתלות מרחוק, או כתלות מקומית.

הוספת תלות מרחוק

מערכת בניית Gradle של Android Studio מוסיף ספריות לפרויקט שלך כמודול תלות. תלות אלה יכולים להיות ממוקמים במאגר מרוחק, כגון Maven או JCenter, או שהם יכולים להיות מאוחסנים בתוך הפרויקט שלך, כתלות מקומית - אתה רק צריך ליידע את Gradle היכן הוא יכול למצוא את התלות האלה.


הוספת ספרייה כתלות מרחוק היא בדרך כלל הדרך המהירה והקלה ביותר להכניס קוד של ספרייה לפרויקט שלך, כך שזו הדרך שנבחן בה בהתחלה. כשאתה מוסיף ספריה כתלות מרחוק, Gradle תוודא שלתלות יש את כל מה שהיא צריכה כדי להפעיל, כולל כל מעבר תלות, כך שבדרך כלל תרצה להוסיף ספריה כתלות מרחוק בכל מקום אפשרי.

כדי להוסיף תלות מרחוק, תצטרך לספק ל- Gradle שתי פיסות מידע:

  • המאגר. Gradle צריכה לדעת את המאגר (או המאגרים) היכן עליה לחפש את הספרייה (או הספריות) שלך. ספריות אנדרואיד נוטות להיות מופצות דרך Maven Central או JCenter.
  • הצהרת הידור. זה מכיל את שם החבילה של הספרייה, את שם קבוצת הספרייה ואת גרסת הספרייה בה ברצונך להשתמש.

באופן אידיאלי, דף ה- GitHub של הספרייה אמור לספק לך את כל המידע הזה. במציאות זה לא תמיד המקרה, אך נתחיל בתרחיש המקרים הטוב ביותר ונניח שדף ה- GitHub של הספריה אכן כולל מידע זה.

הוספת תלות מרחוק עם JCenter

StyleableToast היא ספריה המאפשרת לך להתאים אישית כל חלק בטוסטים של אנדרואיד, כולל שינוי צבע הרקע, רדיוס הפינה והגופן, והוספת סמלים. הוא גם מספק את כל המידע הדרוש לך בכדי להוסיף ספרייה זו לפרויקט שלך, בקטע 'התקנה' הייעודי שלה. כאן אנו יכולים לראות שהפרויקט הזה מופץ באמצעות JCenter.


כשאתה יוצר פרויקט עם המהדורות האחרונות של Android Studio, קבצי build.gradle של הפרויקט שלך כבר מוגדרים לתמיכה ב- JCenter. אם תפתח את קובץ build.gradle ברמת הפרוייקט שלך, תראה ש- JCenter כבר כלול בקטע 'כל הפרויקטים / מאגרים':

allprojects {מאגרים {jcenter ()}}

שימו לב, קובץ build.gradle ברמת הפרויקט מכיל שני בלוקים של 'מאגרים', אך החסימה 'buildscript / repositories' היא המקום בו אתה מגדיר כיצד Gradle מבצע את הבנייה הזו. אסור להוסיף חלק לתלות מודול לקטע זה.

מכיוון שהפרויקט שלך כבר מוגדר לבדיקת JCenter, הדבר היחיד שאנחנו צריכים לעשות הוא להוסיף את הצהרת הקומפילציה שלנו לקובץ build.gradle ברמת המודול.

שוב, StyleableToast מספקת לנו את המידע הדרוש לנו בדיוק, אז פשוט העתיקו את הצהרת הידור מדף ה- GitHub של StyleableToast והדבקו אותו בקובץ ה- Gradle:

תלות {ערוך com.muddzdev: styleabletoast: 1.0.8}

סנכרן את קבצי ה- Gradle שלך, על ידי לחיצה על באנר 'סנכרן', או על ידי בחירה בסמל 'סינכרון פרויקט עם קבצי Gradle' בסרגל הכלים. לאחר מכן תשאיל Gradle את שרת JCenter כדי לבדוק שהספרייה Styleabletoast קיימת, ותוריד את כל הקבצים שלה. אתה מוכן להתחיל להשתמש בספריה זו!

2. הוספת תלות מרחוק עם Maven Central

לחלופין, אם בדף ה- GitHub של הפרויקט נכתב כי הספרייה הזו מופצת דרך Maven Central, תצטרך להגיד ל- Gradle לבדוק את Maven Central במקום זאת.

פתח את קובץ build.gradle שלך ​​ברמת הפרויקט והוסף את Maven Central לחסימה "allprojects":

כל הפרויקטים {מאגרים {mavenCentral ()}}

מכאן שאר התהליך זהה לחלוטין: פתח את קובץ build.gradle ברמת המודול שלך, הוסף את הצהרת הידור וסנכרן עם Gradle.

3. הוספת תלות מרחוק המתארחת בשרת משלה

לעיתים אתה עשוי להיתקל בפרויקט שעדיין מופץ באמצעות JCenter או Maven Central, אך היזם בחר לארח את הפרויקט בשרת משלו. כאשר זה המקרה, דף GitHub של הפרויקט אמור לומר לך להשתמש בכתובת אתר מאוד ספציפית, לדוגמה, מאגר ה- Crashlytics Kit של Fabric ממוקם בכתובת https://maven.fabric.io/public.

אם אתה רואה כתובת URL מסוג זה, עליך לפתוח את קובץ build.gradle ברמת הפרוייקט שלך ואז להכריז על המאגר (במקרה זה, Maven) יחד עם כתובת האתר המדויקת:

מאגרים {maven {url https://maven.fabric.io/public}}

לאחר מכן תוכל להוסיף את הצהרת הידור ולסנכרן את הקבצים שלך כרגיל.

מה אם אני לא יכול למצוא את המאגר ו / או לקבוע קובץ?

עד עכשיו היינו אופטימיים והנחנו כי ה- GitHub של הפרויקט תמיד אומר לך את כל המידע שאתה צריך לדעת. לרוע המזל זה לא תמיד המקרה, אז בואו נעבור מתרחיש המקרה הטוב ביותר, לתרחיש המקרה הגרוע ביותר, ותארו לעצמכם שדף ה- GitHub של הפרויקט לא מספק לך מידע על המאגר והצהרת הידור שאתה צריך להשתמש בהם.

בתרחיש זה, אתה יכול:

  • השתמש ב- JitPack.
  • שבט את כל המאגר, וייבא את הקוד שלו לפרויקט שלך כמודול משלו.

באמצעות JitPack

JitPack הוא מאגר חבילות עבור Git המאפשר להוסיף כל פרויקט GitHub כתלות מרחוק. כל עוד הספרייה מכילה קובץ build, JitPack יכול לייצר את כל המידע הדרוש לכם בכדי להוסיף ספרייה זו לפרויקט שלכם.

השלב הראשון הוא לפתוח את קובץ build.gradle ברמת הפרויקט ולהוסיף את JitPack כמאגר:

allprojects {מאגרים {maven {url https://jitpack.io}}}}

לאחר מכן תוכל להשתמש באתר JitPack כדי ליצור הצהרת קומפילציה, על סמך כתובת ה- GitHub של הפרויקט:

  • בדפדפן האינטרנט שלך, נווט לדף ה- GitHub של הספרייה. העתק את כתובת האתר שלו.
  • עבור לאתר JitPack.
  • הדבק את כתובת האתר בשדה החיפוש של האתר ולחץ על כפתור 'חפש' המלווה.
  • לאחר מכן דף האינטרנט יציג טבלה של כל הגרסאות של ספרייה זו, המפוצלת בין כרטיסיות שונות: משחררים, בונים, סניפים ומחייב. בדרך כלל, משחררים נוטים להיות יציבים יותר, בעוד שקטע התחייבות מכיל את השינויים האחרונים.

  • לאחר שהחלטת באיזו גרסה תרצה להשתמש, לחץ על לחצן 'קבל את זה' המלווה.
  • האתר צריך להתעדכן כדי להציג את הצהרת ההדרכה המדויקת בה אתה צריך להשתמש.

  • העתק / הדבק הצהרת קומפילציה זו לקובץ build.gradle ברמת המודול שלך.
  • סנכרן את קבצי ה- Gradle שלך ​​ואתה מוכן להתחיל להשתמש בספריה שלך!

שיבוט פרויקט GitHub

לחלופין, כשאתה לא בטוח במאגר הספרייה ו / או להרכיב הצהרה, ייתכן שתרצה לעשות זאת שיבוט פרויקט GitHub. השיבוט יוצר עותק של כל הקוד והמשאבים של פרויקט GitHub, ושומר עותק זה במחשב המקומי שלך. לאחר מכן תוכל לייבא את השיבוט לפרויקט שלך כמודול משלו, ולהשתמש בו כתלות מודול.

שיטה זו עשויה להימשך זמן רב, וייבוא ​​שלם של קוד הפרויקט עלול לגרום להתנגשויות עם שאר הפרויקט. עם זאת, השיבוט אכן מעניק לך גישה לכל הקוד של הספרייה, ולכן שיטה זו היא אידיאלית אם ברצונך להתאים אישית את הספרייה, למשל על ידי לצבוט את הקוד שלה כדי להשתלב טוב יותר עם שאר הפרוייקט, או אפילו להוסיף תכונות חדשות (אם כי אם אתה מרגיש שאנשים אחרים עשויים להפיק תועלת מהשינויים שלך, ייתכן שתרצה לשקול לתרום את השיפורים שלך לפרויקט).

לשכפול פרויקט GitHub:

  • צור חשבון GitHub.
  • בחר 'Checkout מבקרת גרסאות' ממסך 'ברוך הבא' של אולפן Android.
  • הזן את אישורי GitHub שלך.
  • פתח את דפדפן האינטרנט שלך, נווט אל מאגר ה- GitHub שברצונך לשכפל ואז העתק / הדבק את כתובת האתר שלו בתיבת הדו-שיח Android Studio.
  • ציין את הספרייה המקומית בה ברצונך לאחסן את המאגר המשובט.
  • תן לתיקייה זו שם ולחץ על 'שיבוט'.

כעת יש לך עותק של קוד הספרייה, תוכל לייבא את הספרייה הזו לפרויקט אנדרואיד שלך, כמודול חדש:

  • פתח את הפרויקט שבו ברצונך להשתמש בספריה המשובצת שלך, ובחר 'קובץ> חדש> ייבוא ​​מודול' מסרגל הכלים של Android Studio.
  • לחץ על הכפתור עם שלוש הנקודות ונווט למאגר המשובט שלך. בחר במאגר זה ולחץ על 'אישור'.
  • לחץ על 'סיום'.
  • בחר 'קובץ> מבנה פרויקט' מסרגל הכלים של Android Studio.
  • בתפריט השמאלי, בחר את המודול בו ברצונך להשתמש בספריה זו.
  • בחר בכרטיסייה 'תלות'.

  • בחר בסמל '+' הקטן ואחריו 'תלות מודול'.
  • בחר את מודול הספרייה שלך ולחץ על 'אישור'.
  • צא מחלון 'מבנה פרויקט'.

בהתאם לספרייה בה אתה משתמש, יתכן שתצטרך לבצע התאמות כלשהן לקוד המיובא שלך לפני שהפרויקט שלך יתחבר. לדוגמה, אם הכרטיסייה 'סטודיו של Android' מתלוננת על גרסאות minSdkVersions לא תואמות, רוב הסיכויים שממשקי ה- API המשמשים את הספרייה אינם תואמים את הגרסאות של פלטפורמת Android המוגדרת בקובץ build.gradle של הפרויקט שלך. באופן דומה, אם Android Studio מתלונן על buildToolsVersion של הפרויקט שלך, סביר להניח שיש חוסר התאמה בין הגירסה שהוגדרה בספריה לגירסה שהוגדרה במקום אחר בפרויקט שלך. בשני התרחישים הללו, עליך לבדוק את הערכים המוגדרים בשני קבצי build.gradle ולשנות אותם בהתאם.

פתרון תקלות

כשאתה עובד עם כל סוג תוכנה של צד שלישי, ככלל סביר יותר להיתקל באי התאמה, באגים וסביבתה. מוזר התנהגות, לעומת כאשר אתה משתמש בחבילת תוכנה שפותחה על ידי אותו צוות, ושבה כל פיסת הפאזל תוכננה במיוחד כדי לעבוד יחד.

אם אתה נתקל בבעיות לאחר הוספת ספריה לפרויקט שלך, נסה את התיקונים הבאים:

  • בדוק שלא הוספת בטעות גרסאות מרובות של אותה ספריה. אם אנדרואיד סטודיו מדווחת על שגיאה "קבצי DEX מרובים מגדירים ...", יתכן שהוספת אותה ספריה לפרויקט שלך לא פעם. אתה יכול לבדוק את התלות של המודול שלך על ידי בחירה 'קובץ> מבנה פרויקט' מסרגל הכלים של Android Studio, ואז לבחור את המודול שברצונך לבדוק ולחץ על הכרטיסייה 'תלות'. אם ספרייה מופיעה בחלון זה מספר פעמים, בחר את הכפילות ולחץ על הסמל הקטן '-' כדי להסיר אותו.
  • חפש ברשת. תמיד יש סיכוי שאנשים אחרים עשויים להיתקל באותה בעיה כמוך, לכן בצע חיפוש מהיר בגוגל כדי לראות אם מישהו פירסם בנושא זה בפורומים, או בקהילות כמו Stackoverflow. אולי אפילו יתמזל מזלכם ותמצאו בלוג או הדרכה הכוללים הוראות כיצד לפתור את הבעיה המדויקת הזו.
  • נקה ובנה מחדש את הפרויקט שלך. לפעמים בחירת 'בנה> נקי פרויקט' מסרגל הכלים של אולפן סטודיו, ואחריה 'בנה> בנייה מחדש של הפרויקט' עשויה להספיק כדי לפתור את הבעיה שלך.
  • ואם כל השאר נכשל ... כדי שתוכנת צד ג 'תעבוד כנדרש לפעמים נדרשת מעט ניסוי וטעייה, כך שאם קיימת שיטה חלופית לייבא את הספריה שבחרת, תמיד כדאי לנסות. רק בגלל שהפרויקט שלך מסרב לקבץ לאחר שייבאת מאגר משובט, זה לא בהכרח אומר שתהיה לו אותה תגובה אם אתה מנסה להשתמש באותה ספרייה כתלות מרחוק.

מסיימים

במאמר זה בדקנו כיצד תוכל להוסיף כל ספרייה שתגלה ב- GitHub, לפרויקט אנדרואיד שלך, ללא קשר אם הספריה ההיא מופצת באמצעות JCenter או Maven Central. וגם אם אין לך מושג באיזה מאגר או הצהרת קומפילציה אתה צריך להשתמש, תמיד יש לך אפשרות להשתמש ב- JitPack, או לשכפל את קוד הספרייה.

האם גילית ספריות אנדרואיד נהדרות ב- GitHub? ספר לנו בתגובות למטה!

עם פרויקט הטרבל, גוגל הבטיחה לנו עדכונים מהירים יותר של אנדרואיד בכך שתסייעו ליצרני ציוד מקורי לשחרר אותם בקצב מהיר יותר. עם זאת, הדרך היחידה לקבוע אם טרבל באמת עובדת הייתה לחכות עד שיהיו מספיק נתונים...

אפליקציית ה- Play Play של סוני, המאפשרת למשתמשים להזרים משחקים מ- P4 שלהם, הייתה מזמן בלעדית לסמארטפונים של ony Xperia. כעת, החברה הודיעה שכבר לא המקרה."למי שרוצה להזרים משחקי P4 במכשירים ניידים,...

אנו ממליצים