מדריך | הוספת תאריך עברי למסך הנעילה בדאמבדרויד
-
@אלוף-תימן אני מניח שהקלאס שמוסיפים שמכיל בעצם את כל הלוגיקה מתאים, השאלה האם זה דורש התאמה.אני אטצרך את האפליקציה של הטלפון הנערך הרצוי, כדי לבדוק את הקוד.
@lilo159 איך להוסיף בf21 pro בגירסה הרגילה? גם במסך הבית וגם במסך הנעילה @שניאור-שמח אני מתייג אותך כי ראיתי שאצלך הוספת גם משהו כזה מתחת לשעון אז אתה כנראה יודע
-
@lilo159 איך להוסיף בf21 pro בגירסה הרגילה? גם במסך הבית וגם במסך הנעילה @שניאור-שמח אני מתייג אותך כי ראיתי שאצלך הוספת גם משהו כזה מתחת לשעון אז אתה כנראה יודע
@מחנה-ידידים כתב במדריך | הוספת תאריך עברי למסך הנעילה בדאמבדרויד:
@שניאור-שמח אני מתייג אותך כי ראיתי שאצלך הוספת גם משהו כזה מתחת לשעון אז אתה כנראה יודע
לא יודע איפה ראית..
ואני לא יודע.. -
@מחנה-ידידים כתב במדריך | הוספת תאריך עברי למסך הנעילה בדאמבדרויד:
@שניאור-שמח אני מתייג אותך כי ראיתי שאצלך הוספת גם משהו כזה מתחת לשעון אז אתה כנראה יודע
לא יודע איפה ראית..
ואני לא יודע..@שניאור-שמח אמת זה מישהו אחר, @יצחק.א אבל הוא הרבה זמן לא נכנס לפורום
-
@שניאור-שמח אמת זה מישהו אחר, @יצחק.א אבל הוא הרבה זמן לא נכנס לפורום
@מחנה-ידידים יש גרסאות שסידרו את זה, על אותו רעיון ש@lilo159 עשה
-
@מחנה-ידידים יש גרסאות שסידרו את זה, על אותו רעיון ש@lilo159 עשה
@שניאור-שמח נכון, ככה היה לי בגירסה אבל החלפתי לשלך ושל @מישהו12 ועכשיו אין לי. מישהו יכול אולי להוציא את launcher3quickstep הערוך מהגרסאות שבהן יש?
-
@אלוף-תימן 1773529799031-mtksystemui.zip
ערכתי את זה, עם התאמות, אבל אין לי דרך לבדוק שזה עובד, אז בזהירות.. כמובן גיבוי וכו' (אבל נראה לי שאתה יודע את זה..). -
@אלוף-תימן 1773529799031-mtksystemui.zip
ערכתי את זה, עם התאמות, אבל אין לי דרך לבדוק שזה עובד, אז בזהירות.. כמובן גיבוי וכו' (אבל נראה לי שאתה יודע את זה..). -
@אלוף-תימן בהמשך, אני פשוט לא ליד מחשב. זה עובד לך?
-
@אלוף-תימן בהמשך, אני פשוט לא ליד מחשב. זה עובד לך?
-
-
-
@lilo159 הכל שם מבולגן לא כ"כ הבנתי מה הולך שם
אתה לא יכול לעלות לי איזה סירטון קצר של כל העריכה שעשית?@אלוף-תימן פשוט תגלול עד לסוף השיחה, זה כמעט אותם עריכות פשוט להדביק איפה שהסטודיו מכוון..
-
@lilo159 הכל שם מבולגן לא כ"כ הבנתי מה הולך שם
אתה לא יכול לעלות לי איזה סירטון קצר של כל העריכה שעשית?אם תרצה אני עדיין יכול להוסיף תמונות או לעשות סרטון.
אלוף, ידעתי למה אני מתעקש לראות את הקוד!
זה בדיוק ההבדל בין מדריך שעובד לבין בוטלופ (קריסת מערכת).ראית איזה יופי? ב-MTK אנדרואיד 13 של אלוף תימן, המהנדסים שינו את המבנה בשני מקומות קריטיים:
- ב-
KeyguardSliceProvider: הם הוציאו את פרמוט התאריך למתודה נפרדת בשםgetFormattedDateLocked()! אם היינו מחפשים את ה-mDateFormat->formatבתוךupdateClockLockedכמו בדאמבדרויד, לא היינו מוצאים אותו. - ב-
KeyguardSliceView: הם בכלל לא קוראים ל-setEllipsizeבקוד ה-Smali (כנראה שזה מוגדר ב-XML או בקלאסKeyguardSliceTextViewעצמו). לכן אין לנו שורות להחליף, אלא רק שורות להוסיף.
בנוסף, עשיתי לך כאן טריק קטן של אופטימיזציה ברגיסטרים: במקום להשתמש ברגיסטר
v2בשביל לבדוק אםindexOfשווה ל-(1-), השתמשתי בפקודהif-ltz(שבודקת אם התוצאה קטנה מ-0). למה? כי המתודה מוגדרת עם.registers 3, מה שאומר ש-v2הוא בעצםp0(ה-thisשל הקלאס). אם היינו דורסים אתv2, המכשיר היה קורס מיד לאחר מכן כשהיה מנסה לשמור את ה-mLastText.הנה ההוראות המדויקות לפורטינג עבור הנגן של אלוף תימן:
שלב 1: הזרקת הלוגיקה ב-
KeyguardSliceProviderבנתיב
com/android/systemui/keyguard/KeyguardSliceProvider.smali, חפש את המתודהupdateClockLocked()V.
תמצא שם את השורות הבאות:.line 406 invoke-virtual {p0}, Lcom/android/systemui/keyguard/KeyguardSliceProvider;->getFormattedDateLocked()Ljava/lang/String; move-result-object v0מיד אחריהן (ולפני ה-
iget-object v1), הוסף את הקוד שלנו. השתמשתי ב-v1בתור רגיסטר זמני כי המערכת במילא דורסת אותו שורה אחת למטה. הדבק את זה:# --- הוספת התאריך העברי --- const/16 v1, 0x2c invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I move-result v1 if-ltz v1, :skip_trim add-int/lit8 v1, v1, 0x2 invoke-virtual {v0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String; move-result-object v0 :skip_trim invoke-static {v0}, Lcom/android/systemui/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 # --- סוף הוספה ---שלב 2: הגדרת 2 שורות במסך הנעילה ב-
KeyguardSliceViewבנתיב
com/android/keyguard/KeyguardSliceView.smali, חפש את המתודהshowSlice.
תמצא שם את יצירת ה-TextView (סביבות שורה 168):new-instance v9, Lcom/android/keyguard/KeyguardSliceView$KeyguardSliceTextView; iget-object v10, p0, Landroid/widget/LinearLayout;->mContext:Landroid/content/Context; invoke-direct {v9, v10}, Lcom/android/keyguard/KeyguardSliceView$KeyguardSliceTextView;-><init>(Landroid/content/Context;)Vמיד אחרי ה-
<init>(לפני ה-setTextColor), אנחנו נזריק את ההגדרות שלנו למספר שורות. גם כאן השתמשתי ב-v10כי הוא פנוי לחלוטין ברגע הזה. הוסף את השורות הבאות:# --- לאפשר תצוגת 2 שורות לתאריך --- const/4 v10, 0x2 invoke-virtual {v9, v10}, Landroid/widget/TextView;->setMaxLines(I)V const/4 v10, 0x0 invoke-virtual {v9, v10}, Landroid/widget/TextView;->setSingleLine(Z)V # --- סוף הוספה ---שלב 3: הוספת ה-Class
כמובן, את השלב הראשון במדריך שלך – יצירת הקובץ
HebrewDateHelper.smaliבנתיבcom/android/systemuiעם כל הלוגיקה בפנים – צריך לעשות בדיוק כמו בדאמבדרויד, ללא שום שינוי.זהו זה! שמור, קמפל חזרה ותתקין. הקוד עכשיו תפור ברמת הפיקסל ל-MTK 13. תעביר את זה לאלוף תימן, וזה אמור לעבוד לו חלק לגמרי. עבודה מעולה שלך על המדריך המקורי!
- ב-
-
אם תרצה אני עדיין יכול להוסיף תמונות או לעשות סרטון.
אלוף, ידעתי למה אני מתעקש לראות את הקוד!
זה בדיוק ההבדל בין מדריך שעובד לבין בוטלופ (קריסת מערכת).ראית איזה יופי? ב-MTK אנדרואיד 13 של אלוף תימן, המהנדסים שינו את המבנה בשני מקומות קריטיים:
- ב-
KeyguardSliceProvider: הם הוציאו את פרמוט התאריך למתודה נפרדת בשםgetFormattedDateLocked()! אם היינו מחפשים את ה-mDateFormat->formatבתוךupdateClockLockedכמו בדאמבדרויד, לא היינו מוצאים אותו. - ב-
KeyguardSliceView: הם בכלל לא קוראים ל-setEllipsizeבקוד ה-Smali (כנראה שזה מוגדר ב-XML או בקלאסKeyguardSliceTextViewעצמו). לכן אין לנו שורות להחליף, אלא רק שורות להוסיף.
בנוסף, עשיתי לך כאן טריק קטן של אופטימיזציה ברגיסטרים: במקום להשתמש ברגיסטר
v2בשביל לבדוק אםindexOfשווה ל-(1-), השתמשתי בפקודהif-ltz(שבודקת אם התוצאה קטנה מ-0). למה? כי המתודה מוגדרת עם.registers 3, מה שאומר ש-v2הוא בעצםp0(ה-thisשל הקלאס). אם היינו דורסים אתv2, המכשיר היה קורס מיד לאחר מכן כשהיה מנסה לשמור את ה-mLastText.הנה ההוראות המדויקות לפורטינג עבור הנגן של אלוף תימן:
שלב 1: הזרקת הלוגיקה ב-
KeyguardSliceProviderבנתיב
com/android/systemui/keyguard/KeyguardSliceProvider.smali, חפש את המתודהupdateClockLocked()V.
תמצא שם את השורות הבאות:.line 406 invoke-virtual {p0}, Lcom/android/systemui/keyguard/KeyguardSliceProvider;->getFormattedDateLocked()Ljava/lang/String; move-result-object v0מיד אחריהן (ולפני ה-
iget-object v1), הוסף את הקוד שלנו. השתמשתי ב-v1בתור רגיסטר זמני כי המערכת במילא דורסת אותו שורה אחת למטה. הדבק את זה:# --- הוספת התאריך העברי --- const/16 v1, 0x2c invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I move-result v1 if-ltz v1, :skip_trim add-int/lit8 v1, v1, 0x2 invoke-virtual {v0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String; move-result-object v0 :skip_trim invoke-static {v0}, Lcom/android/systemui/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 # --- סוף הוספה ---שלב 2: הגדרת 2 שורות במסך הנעילה ב-
KeyguardSliceViewבנתיב
com/android/keyguard/KeyguardSliceView.smali, חפש את המתודהshowSlice.
תמצא שם את יצירת ה-TextView (סביבות שורה 168):new-instance v9, Lcom/android/keyguard/KeyguardSliceView$KeyguardSliceTextView; iget-object v10, p0, Landroid/widget/LinearLayout;->mContext:Landroid/content/Context; invoke-direct {v9, v10}, Lcom/android/keyguard/KeyguardSliceView$KeyguardSliceTextView;-><init>(Landroid/content/Context;)Vמיד אחרי ה-
<init>(לפני ה-setTextColor), אנחנו נזריק את ההגדרות שלנו למספר שורות. גם כאן השתמשתי ב-v10כי הוא פנוי לחלוטין ברגע הזה. הוסף את השורות הבאות:# --- לאפשר תצוגת 2 שורות לתאריך --- const/4 v10, 0x2 invoke-virtual {v9, v10}, Landroid/widget/TextView;->setMaxLines(I)V const/4 v10, 0x0 invoke-virtual {v9, v10}, Landroid/widget/TextView;->setSingleLine(Z)V # --- סוף הוספה ---שלב 3: הוספת ה-Class
כמובן, את השלב הראשון במדריך שלך – יצירת הקובץ
HebrewDateHelper.smaliבנתיבcom/android/systemuiעם כל הלוגיקה בפנים – צריך לעשות בדיוק כמו בדאמבדרויד, ללא שום שינוי.זהו זה! שמור, קמפל חזרה ותתקין. הקוד עכשיו תפור ברמת הפיקסל ל-MTK 13. תעביר את זה לאלוף תימן, וזה אמור לעבוד לו חלק לגמרי. עבודה מעולה שלך על המדריך המקורי!
@lilo159 אני חושב שזה יספיק כרגע הנגן לא אצלי שאני יבדוק אב מממשש תודה רבה על כל הזמן שהקדשת בשבילי בסופו של יום זה פחות בשבילי זה לפחות ל20 משתמשים בפורום שצורבים את הגירסאות הכשרות שלי אני רוצה שהגירסאות שלי יהיו מושלמות
תודה רבה בשם כל האלה שיצרבו ויהנו - ב-
