דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. אנדרואיד - כללי
  3. שיאומי
  4. שיאומי f21 pro ו +f21 pro
  5. עזרה הדדית - שיאומי f21 pro ו +f21 pro
  6. מדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro

מדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro

מתוזמן נעוץ נעול הועבר עזרה הדדית - שיאומי f21 pro ו +f21 pro
20 פוסטים 6 כותבים 213 צפיות 7 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מ מחנה ידידים

    @lilo159 נראה לי שכדאי שתוסיף במדריך איך לעשות למעלה ואיך למטה.

    L מנותק
    L מנותק
    lilo159
    כתב נערך לאחרונה על ידי lilo159
    #5

    @מחנה-ידידים הוספתי בספויילר.
    לא ניסיתי, אבל זה אמור לעבוד.

    תגובה 1 תגובה אחרונה
    2
    • L lilo159

      בהמשך למדריך | הוספת תאריך עברי למסך הבית בדאמבדרויד
      b7d05bf9-70c4-46c4-8782-188973bae653-image.png
      אז משום מה, אתם עדיין משתמשים בגרסה הרגילה של F21 PRO..
      לא נורא, מתי שהוא גם אתם תתקדמו..

      בכל מקרה, לבינתיים:

      כרגיל, הAI הוא המתכנת, אבל האחריות אצלו היא לא טעות סופר..

      לשינויים:
      האפליקציה שאנחנו עורכים היא הלאנצ'ר, שנמצא בנתיב:
      /system_ext/priv-app/Launcher3QuickStep

      כל הקלאסים שנערכים או נוספים, נמצאים בנתיב:
      com/android/launcher3

      1. להוסיף את הקלאס HebrewDateHelper (בנתיב com/android/launcher3):
      .class public Lcom/android/launcher3/HebrewDateHelper;
      .super Ljava/lang/Object;
      
      # direct methods
      .method public static getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
          .registers 12
      
          :try_start_0
          new-instance v0, Landroid/icu/util/HebrewCalendar;
          invoke-direct {v0}, Landroid/icu/util/HebrewCalendar;-><init>()V
      
          new-instance v1, Landroid/icu/util/ULocale;
          const-string v2, "he_IL@calendar=hebrew"
          invoke-direct {v1, v2}, Landroid/icu/util/ULocale;-><init>(Ljava/lang/String;)V
      
          const/4 v2, 0x1
          invoke-static {v2, v1}, Landroid/icu/text/DateFormat;->getDateInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat;
          move-result-object v2
      
          invoke-static {}, Lcom/android/launcher3/HebrewDateHelper;->isAfterNightfall()Z
          move-result v3
          move v10, v3
      
          invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
          move-result-object v4
      
          invoke-virtual {v2, v4}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
          move-result-object v3
      
          if-eqz v3, :cond_bc
      
          const/4 v4, 0x7
          invoke-virtual {v0, v4}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v5
      
          if-ne v5, v4, :cond_33
      
          if-eqz v10, :cond_33
      
          const-string/jumbo v4, "יום שבת"
          const-string/jumbo v5, "מוצאי שבת"
          invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
          move-result-object v3
      
          :cond_33
          const/16 v4, 0x20
          invoke-virtual {v3, v4}, Ljava/lang/String;->lastIndexOf(I)I
          move-result v4
      
          const-string v8, ""
          const-string v9, ""
          const/4 v5, -0x1
      
          if-eq v4, v5, :cond_4b
      
          const/4 v5, 0x0
          invoke-virtual {v3, v5, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v8
      
          add-int/lit8 v4, v4, 0x1
          invoke-virtual {v3, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
          move-result-object v9
      
          :cond_4b
          const/4 v3, 0x2
          invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v4
      
          const/4 v5, 0x5
          const/4 v6, 0x1
          invoke-virtual {v0, v5, v6}, Landroid/icu/util/HebrewCalendar;->add(II)V
      
          invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
          move-result-object v5
          invoke-virtual {v2, v5}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
          move-result-object v6
      
          invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v5
      
          const-string v0, ", "
          invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
          move-result v0
      
          const/4 v7, -0x1
      
          if-eq v0, v7, :cond_70
      
          add-int/lit8 v0, v0, 0x2
          invoke-virtual {v6, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
          move-result-object v6
      
          :cond_70
          const/16 v0, 0x20
          invoke-virtual {v6, v0}, Ljava/lang/String;->lastIndexOf(I)I
          move-result v0
      
          if-eq v0, v7, :cond_7d
      
          const/4 v2, 0x0
          invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v6
      
          :cond_7d
          if-ne v4, v5, :cond_8c
      
          const/16 v0, 0x20
          invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(I)I
          move-result v0
      
          if-eq v0, v7, :cond_8c
      
          const/4 v2, 0x0
          invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v6
      
          :cond_8c
          new-instance v0, Ljava/lang/StringBuilder;
          invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
      
          invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          if-eqz v10, :cond_a7
      
          const-string v2, " (אור ל-"
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          const-string v2, ") "
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          goto :goto_af
      
          :cond_a7
          const-string v2, " "
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          :goto_af
          const-string v2, "\n"
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
          move-result-object v0
          return-object v0
      
          :cond_bc
          new-instance v0, Ljava/lang/StringBuilder;
          invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
          invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          const-string v1, "\n"
          invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
          move-result-object v0
          return-object v0
          :try_end_d1
          .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_d1} :catch_d1
      
          :catch_d1
          move-exception v0
          return-object p0
      .end method
      
      .method private static isAfterNightfall()Z
          .registers 10
      
          invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;
          move-result-object v0
          const/4 v1, 0x6
          invoke-virtual {v0, v1}, Ljava/util/Calendar;->get(I)I
          move-result v1
          const/16 v2, 0xb
          invoke-virtual {v0, v2}, Ljava/util/Calendar;->get(I)I
          move-result v2
          const/16 v3, 0xc
          invoke-virtual {v0, v3}, Ljava/util/Calendar;->get(I)I
          move-result v3
          invoke-virtual {v0}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
          move-result-object v4
          invoke-virtual {v0}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
          move-result-object v0
          invoke-virtual {v4, v0}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
          move-result v0
      
          const-wide v4, 0x400921fb54442d18L
          const-wide/high16 v6, 0x4000000000000000L
          mul-double/2addr v4, v6
          add-int/lit8 v6, v1, -0x50
          int-to-double v6, v6
          mul-double/2addr v4, v6
          const-wide v6, 0x4076d00000000000L
          div-double/2addr v4, v6
          invoke-static {v4, v5}, Ljava/lang/Math;->sin(D)D
          move-result-wide v4
          const-wide v6, 0x3ff0cccccccccccdL
          mul-double/2addr v4, v6
          const-wide v6, 0x403247ae147ae148L
          add-double/2addr v4, v6
      
          if-eqz v0, :cond_48
          const-wide/high16 v6, 0x3ff0000000000000L
          add-double/2addr v4, v6
          :cond_48
      
          double-to-int v0, v4
          int-to-double v6, v0
          sub-double/2addr v4, v6
          const-wide v6, 0x404e000000000000L
          mul-double/2addr v4, v6
          double-to-int v4, v4
          const/4 v5, 0x1
      
          if-le v2, v0, :cond_56
          return v5
      
          :cond_56
          if-ne v2, v0, :cond_5b
          if-lt v3, v4, :cond_5b
          return v5
      
          :cond_5b
          const/4 v0, 0x0
          return v0
      .end method
      

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

      .class public Lcom/android/launcher3/HebrewDateHelper;
      .super Ljava/lang/Object;
      
      # direct methods
      .method public static getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
          .registers 12
      
          :try_start_0
          new-instance v0, Landroid/icu/util/HebrewCalendar;
          invoke-direct {v0}, Landroid/icu/util/HebrewCalendar;-><init>()V
      
          new-instance v1, Landroid/icu/util/ULocale;
          const-string v2, "he_IL@calendar=hebrew"
          invoke-direct {v1, v2}, Landroid/icu/util/ULocale;-><init>(Ljava/lang/String;)V
      
          const/4 v2, 0x1
          invoke-static {v2, v1}, Landroid/icu/text/DateFormat;->getDateInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat;
          move-result-object v2
      
          invoke-static {}, Lcom/android/launcher3/HebrewDateHelper;->isAfterNightfall()Z
          move-result v3
          move v10, v3
      
          invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
          move-result-object v4
      
          invoke-virtual {v2, v4}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
          move-result-object v3
      
          if-eqz v3, :cond_bc
      
          const/4 v4, 0x7
          invoke-virtual {v0, v4}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v5
      
          if-ne v5, v4, :cond_33
      
          if-eqz v10, :cond_33
      
          const-string/jumbo v4, "יום שבת"
          const-string/jumbo v5, "מוצאי שבת"
          invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
          move-result-object v3
      
          :cond_33
          const/16 v4, 0x20
          invoke-virtual {v3, v4}, Ljava/lang/String;->lastIndexOf(I)I
          move-result v4
      
          const-string v8, ""
          const-string v9, ""
          const/4 v5, -0x1
      
          if-eq v4, v5, :cond_4b
      
          const/4 v5, 0x0
          invoke-virtual {v3, v5, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v8
      
          add-int/lit8 v4, v4, 0x1
          invoke-virtual {v3, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
          move-result-object v9
      
          :cond_4b
          const/4 v3, 0x2
          invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v4
      
          const/4 v5, 0x5
          const/4 v6, 0x1
          invoke-virtual {v0, v5, v6}, Landroid/icu/util/HebrewCalendar;->add(II)V
      
          invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
          move-result-object v5
          invoke-virtual {v2, v5}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
          move-result-object v6
      
          invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
          move-result v5
      
          const-string v0, ", "
          invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
          move-result v0
      
          const/4 v7, -0x1
      
          if-eq v0, v7, :cond_70
      
          add-int/lit8 v0, v0, 0x2
          invoke-virtual {v6, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
          move-result-object v6
      
          :cond_70
          const/16 v0, 0x20
          invoke-virtual {v6, v0}, Ljava/lang/String;->lastIndexOf(I)I
          move-result v0
      
          if-eq v0, v7, :cond_7d
      
          const/4 v2, 0x0
          invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v6
      
          :cond_7d
          if-ne v4, v5, :cond_8c
      
          const/16 v0, 0x20
          invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(I)I
          move-result v0
      
          if-eq v0, v7, :cond_8c
      
          const/4 v2, 0x0
          invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
          move-result-object v6
      
          :cond_8c
          new-instance v0, Ljava/lang/StringBuilder;
          invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
      
          invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          const-string v2, "\n"
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          if-eqz v10, :cond_a7
      
          const-string v2, " (אור ל-"
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          const-string v2, ") "
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          goto :goto_af
      
          :cond_a7
          const-string v2, " "
          invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          :goto_af
          invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
          move-result-object v0
          return-object v0
      
          :cond_bc
          new-instance v0, Ljava/lang/StringBuilder;
          invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
      
          invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          const-string v1, "\n"
          invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
          invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
      
          invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
          move-result-object v0
          return-object v0
          :try_end_d1
          .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_d1} :catch_d1
      
          :catch_d1
          move-exception v0
          return-object p0
      .end method
      
      .method private static isAfterNightfall()Z
          .registers 10
      
          invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;
          move-result-object v0
          const/4 v1, 0x6
          invoke-virtual {v0, v1}, Ljava/util/Calendar;->get(I)I
          move-result v1
          const/16 v2, 0xb
          invoke-virtual {v0, v2}, Ljava/util/Calendar;->get(I)I
          move-result v2
          const/16 v3, 0xc
          invoke-virtual {v0, v3}, Ljava/util/Calendar;->get(I)I
          move-result v3
          invoke-virtual {v0}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
          move-result-object v4
          invoke-virtual {v0}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
          move-result-object v0
          invoke-virtual {v4, v0}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
          move-result v0
      
          const-wide v4, 0x400921fb54442d18L
          const-wide/high16 v6, 0x4000000000000000L
          mul-double/2addr v4, v6
          add-int/lit8 v6, v1, -0x50
          int-to-double v6, v6
          mul-double/2addr v4, v6
          const-wide v6, 0x4076d00000000000L
          div-double/2addr v4, v6
          invoke-static {v4, v5}, Ljava/lang/Math;->sin(D)D
          move-result-wide v4
          const-wide v6, 0x3ff0cccccccccccdL
          mul-double/2addr v4, v6
          const-wide v6, 0x403247ae147ae148L
          add-double/2addr v4, v6
      
          if-eqz v0, :cond_48
          const-wide/high16 v6, 0x3ff0000000000000L
          add-double/2addr v4, v6
          :cond_48
      
          double-to-int v0, v4
          int-to-double v6, v0
          sub-double/2addr v4, v6
          const-wide v6, 0x404e000000000000L
          mul-double/2addr v4, v6
          double-to-int v4, v4
          const/4 v5, 0x1
      
          if-le v2, v0, :cond_56
          return v5
      
          :cond_56
          if-ne v2, v0, :cond_5b
          if-lt v3, v4, :cond_5b
          return v5
      
          :cond_5b
          const/4 v0, 0x0
          return v0
      .end method
      

      1. להוסיף את הקלאס (באותו נתיב):
        WorkspaceDateReceiver
      .class public Lcom/android/launcher3/WorkspaceDateReceiver;
      .super Landroid/content/BroadcastReceiver;
      
      .field private final mWorkspace:Lcom/android/launcher3/Workspace;
      
      .method public constructor <init>(Lcom/android/launcher3/Workspace;)V
          .registers 2
      
          .line 1
          invoke-direct {p0}, Landroid/content/BroadcastReceiver;-><init>()V
      
          .line 2
          iput-object p1, p0, Lcom/android/launcher3/WorkspaceDateReceiver;->mWorkspace:Lcom/android/launcher3/Workspace;
      
          .line 3
          return-void
      .end method
      
      .method public onReceive(Landroid/content/Context;Landroid/content/Intent;)V
          .registers 3
      
          .line 1
          iget-object p1, p0, Lcom/android/launcher3/WorkspaceDateReceiver;->mWorkspace:Lcom/android/launcher3/Workspace;
      
          if-eqz p1, :cond_end
      
          .line 2
          invoke-virtual {p1}, Lcom/android/launcher3/Workspace;->refreshTime()V
      
          :cond_end
          return-void
      .end method
      
      1. בקלאס Workspace (שנמצא בנתיב כדלעיל):
        יחסית בתחילת הקלאס (בערך שורה 46)
        אחרי השורה
      # static fields
      

      להוסיף את השורה הזאת:

      .field private mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
      
      1. באותו קלאס
        במתודה insertNewWorkspaceScreen (הראשונה, נראית כך):
      .method public insertNewWorkspaceScreen(II)Lcom/android/launcher3/CellLayout;
      

      מתחת לשורה .line 728 ישנה השורה:

      invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setFocusable(Z)V
      

      מיד אחריה להוסיף את השורות:

      # הזרקה: 2 שורות ומרכוז
          invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setSingleLine(Z)V
          const/4 v7, 0x2
          invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setMaxLines(I)V
          const/16 v7, 0x11
          invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setGravity(I)V
      


      אמור להראות כך:

          .line 728
          invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setFocusable(Z)V
          # הזרקה: 2 שורות ומרכוז
          invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setSingleLine(Z)V
          const/4 v7, 0x2
          invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setMaxLines(I)V
          const/16 v7, 0x11
          invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setGravity(I)V
      

      1. באותו קלאס
        במתודה refreshTime
        א. לשנות את המתודה לpublic
        ב. לחפש את השורה הזאת:
      invoke-direct/range {p0 .. p0}, Lcom/android/launcher3/Workspace;->refreshTime()V
      

      ולהחליף עם זאת:

      invoke-virtual/range {p0 .. p0}, Lcom/android/launcher3/Workspace;->refreshTime()V
      

      ג. מיד אחרי השורה הזאת (היא נמצאת פעמיים, לבצע על שני השורות שתמצאו):

      sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
      
      

      להוסיף את הקוד:

      invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
          move-result-object v1
      


      בסוף המתודה אמורה להראות כך:

      .method public refreshTime()V
          .registers 4
      
          .line 779
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
      
          move-result-object v0
      
          invoke-static {v0}, Lcom/android/launcher3/Workspace$Patterns;->update(Landroid/content/Context;)V
      
          .line 780
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateView:Landroid/widget/TextClock;
      
          sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
      
          # הזרקת התאריך העברי לפורמט 24 שעות
          invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
          move-result-object v1
      
          invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat24Hour(Ljava/lang/CharSequence;)V
      
          .line 781
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateView:Landroid/widget/TextClock;
      
          sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
      
          # הזרקת התאריך העברי לפורמט 12 שעות
          invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
          move-result-object v1
      
          invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat12Hour(Ljava/lang/CharSequence;)V
      
          .line 783
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mClockView:Landroid/widget/TextClock;
      
          .line 784
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getResources()Landroid/content/res/Resources;
      
          move-result-object v1
      
          sget v2, Lcom/android/launcher3/R$dimen;->am_pm_widget_font_size:I
      
          invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getDimension(I)F
      
          move-result v1
      
          float-to-int v1, v1
      
          sget-object v2, Lcom/android/launcher3/Workspace$Patterns;->clockView12:Ljava/lang/String;
      
          .line 783
          invoke-virtual {p0, v1, v2}, Lcom/android/launcher3/Workspace;->updateAmPmTextSize(ILjava/lang/String;)Ljava/lang/CharSequence;
      
          move-result-object v1
      
          invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat12Hour(Ljava/lang/CharSequence;)V
      
          .line 785
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mClockView:Landroid/widget/TextClock;
      
          sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->clockView24:Ljava/lang/String;
      
          invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat24Hour(Ljava/lang/CharSequence;)V
      
          .line 788
          return-void
      .end method
      

      1. במתודה onAttachedToWindow
        א. להוסיף רגיסטר אחד (להחליף מ3 ל4).
        ב. בסוף המתודה ממש לפני return-void, להוסיף את הקוד:
      # הזרקה: רישום המאזין
          new-instance v0, Lcom/android/launcher3/WorkspaceDateReceiver;
          invoke-direct {v0, p0}, Lcom/android/launcher3/WorkspaceDateReceiver;-><init>(Lcom/android/launcher3/Workspace;)V
          iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
      
          new-instance v1, Landroid/content/IntentFilter;
          invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
      
          const-string v2, "android.intent.action.TIME_TICK"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.TIME_SET"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.TIMEZONE_CHANGED"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.DATE_CHANGED"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
          move-result-object v2
          invoke-virtual {v2, v0, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
      


      בסוף המתודה אמורה להראות כך:

      .method protected onAttachedToWindow()V
          .registers 4
      
          .line 1490
          invoke-super {p0}, Lcom/android/launcher3/PagedView;->onAttachedToWindow()V
      
          .line 1491
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mWallpaperOffset:Lcom/android/launcher3/util/WallpaperOffsetInterpolator;
      
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getWindowToken()Landroid/os/IBinder;
      
          move-result-object v1
      
          invoke-virtual {v0, v1}, Lcom/android/launcher3/util/WallpaperOffsetInterpolator;->setWindowToken(Landroid/os/IBinder;)V
      
          .line 1492
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->computeScroll()V
      
          # רישום המאזין לאירועי שעון
          new-instance v0, Lcom/android/launcher3/WorkspaceDateReceiver;
          invoke-direct {v0, p0}, Lcom/android/launcher3/WorkspaceDateReceiver;-><init>(Lcom/android/launcher3/Workspace;)V
          iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
      
          new-instance v1, Landroid/content/IntentFilter;
          invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
      
          const-string v2, "android.intent.action.TIME_TICK"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.TIME_SET"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.TIMEZONE_CHANGED"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          const-string v2, "android.intent.action.DATE_CHANGED"
          invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
      
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
          move-result-object v2
          invoke-virtual {v2, v0, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
      
          .line 1493
          return-void
      .end method
      

      1. במתודה onDetachedFromWindow (נמצאת ממש אחרי המתודה הקודמת)
        כמו קודם, בסוף המתודה ממש לפני הreturn-void, להוסיף את הקוד הבא:
      # הזרקה: ביטול המאזין
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
          if-eqz v0, :cond_unregister_end
      
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
          move-result-object v1
          invoke-virtual {v1, v0}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
      
          const/4 v0, 0x0
          iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
      
          :cond_unregister_end
      


      בסוף המתודה אמורה להראות כך:

      .method protected onDetachedFromWindow()V
          .registers 3
      
          .line 1496
          invoke-super {p0}, Lcom/android/launcher3/PagedView;->onDetachedFromWindow()V
      
          .line 1497
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mWallpaperOffset:Lcom/android/launcher3/util/WallpaperOffsetInterpolator;
      
          const/4 v1, 0x0
      
          invoke-virtual {v0, v1}, Lcom/android/launcher3/util/WallpaperOffsetInterpolator;->setWindowToken(Landroid/os/IBinder;)V
      
          # מחיקת המאזין כדי למנוע דליפת זיכרון
          iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
          if-eqz v0, :cond_unregister_end
      
          invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
          move-result-object v1
          invoke-virtual {v1, v0}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
      
          const/4 v0, 0x0
          iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
      
          :cond_unregister_end
      
          .line 1498
          return-void
      .end method
      

      בהצלחה!

      ח מנותק
      ח מנותק
      חד גדיא
      כתב נערך לאחרונה על ידי
      #6

      @lilo159 אשמח אם תסביר מה זה בעצם עושה,
      כאילו מאיפה נשאב התאריך העברי

      L תגובה 1 תגובה אחרונה
      0
      • ח חד גדיא

        @lilo159 אשמח אם תסביר מה זה בעצם עושה,
        כאילו מאיפה נשאב התאריך העברי

        L מנותק
        L מנותק
        lilo159
        כתב נערך לאחרונה על ידי
        #7

        @חד-גדיא לפי הבנתי המועטה, ישנה ספריה מובנית באנדרואיד שנקראת icu, ומשם נשאב התאריך העברי.

        מ תגובה 1 תגובה אחרונה
        0
        • L lilo159

          @חד-גדיא לפי הבנתי המועטה, ישנה ספריה מובנית באנדרואיד שנקראת icu, ומשם נשאב התאריך העברי.

          מ מנותק
          מ מנותק
          מחנה ידידים
          כתב נערך לאחרונה על ידי
          #8

          @lilo159 א' תודה, עובד לי.
          ב' הAi שם גרשיים של אנגלית.
          איך לתקן עכשיו לגרשיים של עברית?

          שניאור שמחש תגובה 1 תגובה אחרונה
          0
          • מ מחנה ידידים

            @lilo159 א' תודה, עובד לי.
            ב' הAi שם גרשיים של אנגלית.
            איך לתקן עכשיו לגרשיים של עברית?

            שניאור שמחש מנותק
            שניאור שמחש מנותק
            שניאור שמח
            מדריכים עימוד
            כתב נערך לאחרונה על ידי
            #9

            @מחנה-ידידים על איזה גרשיים אתה מדבר?

            "אם לא תנסה, איך תדע?"

            מ תגובה 1 תגובה אחרונה
            0
            • שניאור שמחש שניאור שמח

              @מחנה-ידידים על איזה גרשיים אתה מדבר?

              מ מנותק
              מ מנותק
              מחנה ידידים
              כתב נערך לאחרונה על ידי
              #10

              @שניאור-שמח
              a082cd0f-9b48-47b1-9ba9-a29ad3d49ebf-WIN_20260415_12_12_21_Pro.jpg

              שניאור שמחש תגובה 1 תגובה אחרונה
              0
              • מ מחנה ידידים

                @שניאור-שמח
                a082cd0f-9b48-47b1-9ba9-a29ad3d49ebf-WIN_20260415_12_12_21_Pro.jpg

                שניאור שמחש מנותק
                שניאור שמחש מנותק
                שניאור שמח
                מדריכים עימוד
                כתב נערך לאחרונה על ידי
                #11

                @מחנה-ידידים אתה בטוח שזה לא אמור להיות ככה?
                לפי ג׳ימני זה כן טוב

                "אם לא תנסה, איך תדע?"

                מ תגובה 1 תגובה אחרונה
                0
                • שניאור שמחש שניאור שמח

                  @מחנה-ידידים אתה בטוח שזה לא אמור להיות ככה?
                  לפי ג׳ימני זה כן טוב

                  מ מנותק
                  מ מנותק
                  מחנה ידידים
                  כתב נערך לאחרונה על ידי
                  #12

                  @שניאור-שמח זה " בעברית וזה ״ באנגלית

                  ג'מיני

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

                  להלן הסימנים:

                  1. גרשיים "סטנדרטיים" (לשימוש כללי ותכנות)

                  אלו הגרשיים שנמצאים במקלדת לצד מקש ה-Enter. הם ישרים ומשמשים כברירת מחדל בשתי השפות ברוב הממשקים הדיגיטליים:

                  • גרשיים כפולים: "
                  • גרש בודד: '

                  2. גרשיים עבריים (טיפוגרפיים)

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

                  • גרשיים (לראשי תיבות): ״ (תו יוניקוד U+05F4)
                  • גרש (לקיצורים): ׳ (תו יוניקוד U+05F3)

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


                  3. גרשיים אנגליים (Smart Quotes)

                  באנגלית מקצועית (ספרות, עיתונות) משתמשים בגרשיים "מעוקלים" או "חכמים" שמשתנים לפי תחילת או סוף הציטוט:

                  • גרשיים כפולים (פתיחה וסגירה): “ ”
                  • גרשיים בודדים (פתיחה וסגירה): ‘ ’

                  טבלת ריכוז

                  סוג סימן כפול סימן בודד
                  מקלדת/דיגיטלי " '
                  עברית תקנית ״ ׳
                  אנגלית (טיפוגרפי) “ ” ‘ ’

                  מ שניאור שמחש 2 תגובות תגובה אחרונה
                  0
                  • מ מחנה ידידים

                    @שניאור-שמח זה " בעברית וזה ״ באנגלית

                    ג'מיני

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

                    להלן הסימנים:

                    1. גרשיים "סטנדרטיים" (לשימוש כללי ותכנות)

                    אלו הגרשיים שנמצאים במקלדת לצד מקש ה-Enter. הם ישרים ומשמשים כברירת מחדל בשתי השפות ברוב הממשקים הדיגיטליים:

                    • גרשיים כפולים: "
                    • גרש בודד: '

                    2. גרשיים עבריים (טיפוגרפיים)

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

                    • גרשיים (לראשי תיבות): ״ (תו יוניקוד U+05F4)
                    • גרש (לקיצורים): ׳ (תו יוניקוד U+05F3)

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


                    3. גרשיים אנגליים (Smart Quotes)

                    באנגלית מקצועית (ספרות, עיתונות) משתמשים בגרשיים "מעוקלים" או "חכמים" שמשתנים לפי תחילת או סוף הציטוט:

                    • גרשיים כפולים (פתיחה וסגירה): “ ”
                    • גרשיים בודדים (פתיחה וסגירה): ‘ ’

                    טבלת ריכוז

                    סוג סימן כפול סימן בודד
                    מקלדת/דיגיטלי " '
                    עברית תקנית ״ ׳
                    אנגלית (טיפוגרפי) “ ” ‘ ’

                    מ מנותק
                    מ מנותק
                    מחנה ידידים
                    כתב נערך לאחרונה על ידי
                    #13

                    d6f18f07-8a46-49bf-90fb-e6c9a876679c-image.png

                    תגובה 1 תגובה אחרונה
                    0
                    • מ מחנה ידידים

                      @שניאור-שמח זה " בעברית וזה ״ באנגלית

                      ג'מיני

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

                      להלן הסימנים:

                      1. גרשיים "סטנדרטיים" (לשימוש כללי ותכנות)

                      אלו הגרשיים שנמצאים במקלדת לצד מקש ה-Enter. הם ישרים ומשמשים כברירת מחדל בשתי השפות ברוב הממשקים הדיגיטליים:

                      • גרשיים כפולים: "
                      • גרש בודד: '

                      2. גרשיים עבריים (טיפוגרפיים)

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

                      • גרשיים (לראשי תיבות): ״ (תו יוניקוד U+05F4)
                      • גרש (לקיצורים): ׳ (תו יוניקוד U+05F3)

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


                      3. גרשיים אנגליים (Smart Quotes)

                      באנגלית מקצועית (ספרות, עיתונות) משתמשים בגרשיים "מעוקלים" או "חכמים" שמשתנים לפי תחילת או סוף הציטוט:

                      • גרשיים כפולים (פתיחה וסגירה): “ ”
                      • גרשיים בודדים (פתיחה וסגירה): ‘ ’

                      טבלת ריכוז

                      סוג סימן כפול סימן בודד
                      מקלדת/דיגיטלי " '
                      עברית תקנית ״ ׳
                      אנגלית (טיפוגרפי) “ ” ‘ ’

                      שניאור שמחש מנותק
                      שניאור שמחש מנותק
                      שניאור שמח
                      מדריכים עימוד
                      כתב נערך לאחרונה על ידי
                      #14

                      @מחנה-ידידים כתב במדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro:

                      @שניאור-שמח זה " בעברית וזה ״ באנגלית

                      ג'מיני

                      2. גרשיים עבריים (טיפוגרפיים)

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

                      • גרשיים (לראשי תיבות): ״ (תו יוניקוד U+05F4)
                      • גרש (לקיצורים): ׳ (תו יוניקוד U+05F3)

                      | עברית תקנית | ״ | ׳ |

                      נו, תראה מה הוא רשם לך..
                      זה כמו שיש עכשיו

                      "אם לא תנסה, איך תדע?"

                      מ תגובה 1 תגובה אחרונה
                      0
                      • שניאור שמחש שניאור שמח

                        @מחנה-ידידים כתב במדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro:

                        @שניאור-שמח זה " בעברית וזה ״ באנגלית

                        ג'מיני

                        2. גרשיים עבריים (טיפוגרפיים)

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

                        • גרשיים (לראשי תיבות): ״ (תו יוניקוד U+05F4)
                        • גרש (לקיצורים): ׳ (תו יוניקוד U+05F3)

                        | עברית תקנית | ״ | ׳ |

                        נו, תראה מה הוא רשם לך..
                        זה כמו שיש עכשיו

                        מ מנותק
                        מ מנותק
                        מחנה ידידים
                        כתב נערך לאחרונה על ידי
                        #15

                        @שניאור-שמח כתב במדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro:

                        1. גרשיים עבריים (טיפוגרפיים)

                        טִיפּוֹגְרָפִי
                        תֹּאַר
                        הַשַּׁיָּךְ לַדְּפוּס, דְּפוּסִי

                        הכוונה לעברי רגיל כמו בתמונה השניה - מ www.compart.com

                        שניאור שמחש תגובה 1 תגובה אחרונה
                        0
                        • מ מחנה ידידים

                          @שניאור-שמח כתב במדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro:

                          1. גרשיים עבריים (טיפוגרפיים)

                          טִיפּוֹגְרָפִי
                          תֹּאַר
                          הַשַּׁיָּךְ לַדְּפוּס, דְּפוּסִי

                          הכוונה לעברי רגיל כמו בתמונה השניה - מ www.compart.com

                          שניאור שמחש מנותק
                          שניאור שמחש מנותק
                          שניאור שמח
                          מדריכים עימוד
                          כתב נערך לאחרונה על ידי שניאור שמח
                          #16

                          @מחנה-ידידים טוב, לא יודע מה אתה רוצה
                          ששלחתי תמונה של התאריך הוא אמר שזה טוב..

                          @מישהו12 אתה מבין בזה? יש לך מושג?

                          "אם לא תנסה, איך תדע?"

                          מ תגובה 1 תגובה אחרונה
                          0
                          • שניאור שמחש שניאור שמח

                            @מחנה-ידידים טוב, לא יודע מה אתה רוצה
                            ששלחתי תמונה של התאריך הוא אמר שזה טוב..

                            @מישהו12 אתה מבין בזה? יש לך מושג?

                            מ מנותק
                            מ מנותק
                            מחנה ידידים
                            כתב נערך לאחרונה על ידי
                            #17

                            @שניאור-שמח אתה רואה בעצמך שתו יוניקוד U+05F4 מוגדר כ"עברי". אני סומך על www.compart.com יותר מעל ג'מיני...

                            נוחעם FMנ תגובה 1 תגובה אחרונה
                            0
                            • מ מחנה ידידים

                              @שניאור-שמח אתה רואה בעצמך שתו יוניקוד U+05F4 מוגדר כ"עברי". אני סומך על www.compart.com יותר מעל ג'מיני...

                              נוחעם FMנ מחובר
                              נוחעם FMנ מחובר
                              נוחעם FM
                              מדריכים
                              כתב נערך לאחרונה על ידי
                              #18

                              @מחנה-ידידים @שניאור-שמח קצת סטיתם מהנושא.
                              וזה לא נשמע לי כזה קריטי גרשיים כאלו או כאלו. לא ככה?

                              הפעלת שלוחות בVoLTE

                              מ תגובה 1 תגובה אחרונה
                              1
                              • נוחעם FMנ נוחעם FM

                                @מחנה-ידידים @שניאור-שמח קצת סטיתם מהנושא.
                                וזה לא נשמע לי כזה קריטי גרשיים כאלו או כאלו. לא ככה?

                                מ מנותק
                                מ מנותק
                                מחנה ידידים
                                כתב נערך לאחרונה על ידי
                                #19

                                @נוחעם-FM טוב, צודק.
                                השאלה שלי היא: מה המיקום של הסטרינג שאחראי לגרשיים.

                                תגובה 1 תגובה אחרונה
                                0
                                • L lilo159

                                  בהמשך למדריך | הוספת תאריך עברי למסך הבית בדאמבדרויד
                                  b7d05bf9-70c4-46c4-8782-188973bae653-image.png
                                  אז משום מה, אתם עדיין משתמשים בגרסה הרגילה של F21 PRO..
                                  לא נורא, מתי שהוא גם אתם תתקדמו..

                                  בכל מקרה, לבינתיים:

                                  כרגיל, הAI הוא המתכנת, אבל האחריות אצלו היא לא טעות סופר..

                                  לשינויים:
                                  האפליקציה שאנחנו עורכים היא הלאנצ'ר, שנמצא בנתיב:
                                  /system_ext/priv-app/Launcher3QuickStep

                                  כל הקלאסים שנערכים או נוספים, נמצאים בנתיב:
                                  com/android/launcher3

                                  1. להוסיף את הקלאס HebrewDateHelper (בנתיב com/android/launcher3):
                                  .class public Lcom/android/launcher3/HebrewDateHelper;
                                  .super Ljava/lang/Object;
                                  
                                  # direct methods
                                  .method public static getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
                                      .registers 12
                                  
                                      :try_start_0
                                      new-instance v0, Landroid/icu/util/HebrewCalendar;
                                      invoke-direct {v0}, Landroid/icu/util/HebrewCalendar;-><init>()V
                                  
                                      new-instance v1, Landroid/icu/util/ULocale;
                                      const-string v2, "he_IL@calendar=hebrew"
                                      invoke-direct {v1, v2}, Landroid/icu/util/ULocale;-><init>(Ljava/lang/String;)V
                                  
                                      const/4 v2, 0x1
                                      invoke-static {v2, v1}, Landroid/icu/text/DateFormat;->getDateInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat;
                                      move-result-object v2
                                  
                                      invoke-static {}, Lcom/android/launcher3/HebrewDateHelper;->isAfterNightfall()Z
                                      move-result v3
                                      move v10, v3
                                  
                                      invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
                                      move-result-object v4
                                  
                                      invoke-virtual {v2, v4}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
                                      move-result-object v3
                                  
                                      if-eqz v3, :cond_bc
                                  
                                      const/4 v4, 0x7
                                      invoke-virtual {v0, v4}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v5
                                  
                                      if-ne v5, v4, :cond_33
                                  
                                      if-eqz v10, :cond_33
                                  
                                      const-string/jumbo v4, "יום שבת"
                                      const-string/jumbo v5, "מוצאי שבת"
                                      invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
                                      move-result-object v3
                                  
                                      :cond_33
                                      const/16 v4, 0x20
                                      invoke-virtual {v3, v4}, Ljava/lang/String;->lastIndexOf(I)I
                                      move-result v4
                                  
                                      const-string v8, ""
                                      const-string v9, ""
                                      const/4 v5, -0x1
                                  
                                      if-eq v4, v5, :cond_4b
                                  
                                      const/4 v5, 0x0
                                      invoke-virtual {v3, v5, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v8
                                  
                                      add-int/lit8 v4, v4, 0x1
                                      invoke-virtual {v3, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
                                      move-result-object v9
                                  
                                      :cond_4b
                                      const/4 v3, 0x2
                                      invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v4
                                  
                                      const/4 v5, 0x5
                                      const/4 v6, 0x1
                                      invoke-virtual {v0, v5, v6}, Landroid/icu/util/HebrewCalendar;->add(II)V
                                  
                                      invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
                                      move-result-object v5
                                      invoke-virtual {v2, v5}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v5
                                  
                                      const-string v0, ", "
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
                                      move-result v0
                                  
                                      const/4 v7, -0x1
                                  
                                      if-eq v0, v7, :cond_70
                                  
                                      add-int/lit8 v0, v0, 0x2
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_70
                                      const/16 v0, 0x20
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->lastIndexOf(I)I
                                      move-result v0
                                  
                                      if-eq v0, v7, :cond_7d
                                  
                                      const/4 v2, 0x0
                                      invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_7d
                                      if-ne v4, v5, :cond_8c
                                  
                                      const/16 v0, 0x20
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(I)I
                                      move-result v0
                                  
                                      if-eq v0, v7, :cond_8c
                                  
                                      const/4 v2, 0x0
                                      invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_8c
                                      new-instance v0, Ljava/lang/StringBuilder;
                                      invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
                                  
                                      invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      if-eqz v10, :cond_a7
                                  
                                      const-string v2, " (אור ל-"
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      const-string v2, ") "
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      goto :goto_af
                                  
                                      :cond_a7
                                      const-string v2, " "
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      :goto_af
                                      const-string v2, "\n"
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
                                      move-result-object v0
                                      return-object v0
                                  
                                      :cond_bc
                                      new-instance v0, Ljava/lang/StringBuilder;
                                      invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
                                      invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      const-string v1, "\n"
                                      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
                                      move-result-object v0
                                      return-object v0
                                      :try_end_d1
                                      .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_d1} :catch_d1
                                  
                                      :catch_d1
                                      move-exception v0
                                      return-object p0
                                  .end method
                                  
                                  .method private static isAfterNightfall()Z
                                      .registers 10
                                  
                                      invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;
                                      move-result-object v0
                                      const/4 v1, 0x6
                                      invoke-virtual {v0, v1}, Ljava/util/Calendar;->get(I)I
                                      move-result v1
                                      const/16 v2, 0xb
                                      invoke-virtual {v0, v2}, Ljava/util/Calendar;->get(I)I
                                      move-result v2
                                      const/16 v3, 0xc
                                      invoke-virtual {v0, v3}, Ljava/util/Calendar;->get(I)I
                                      move-result v3
                                      invoke-virtual {v0}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
                                      move-result-object v4
                                      invoke-virtual {v0}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
                                      move-result-object v0
                                      invoke-virtual {v4, v0}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
                                      move-result v0
                                  
                                      const-wide v4, 0x400921fb54442d18L
                                      const-wide/high16 v6, 0x4000000000000000L
                                      mul-double/2addr v4, v6
                                      add-int/lit8 v6, v1, -0x50
                                      int-to-double v6, v6
                                      mul-double/2addr v4, v6
                                      const-wide v6, 0x4076d00000000000L
                                      div-double/2addr v4, v6
                                      invoke-static {v4, v5}, Ljava/lang/Math;->sin(D)D
                                      move-result-wide v4
                                      const-wide v6, 0x3ff0cccccccccccdL
                                      mul-double/2addr v4, v6
                                      const-wide v6, 0x403247ae147ae148L
                                      add-double/2addr v4, v6
                                  
                                      if-eqz v0, :cond_48
                                      const-wide/high16 v6, 0x3ff0000000000000L
                                      add-double/2addr v4, v6
                                      :cond_48
                                  
                                      double-to-int v0, v4
                                      int-to-double v6, v0
                                      sub-double/2addr v4, v6
                                      const-wide v6, 0x404e000000000000L
                                      mul-double/2addr v4, v6
                                      double-to-int v4, v4
                                      const/4 v5, 0x1
                                  
                                      if-le v2, v0, :cond_56
                                      return v5
                                  
                                      :cond_56
                                      if-ne v2, v0, :cond_5b
                                      if-lt v3, v4, :cond_5b
                                      return v5
                                  
                                      :cond_5b
                                      const/4 v0, 0x0
                                      return v0
                                  .end method
                                  

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

                                  .class public Lcom/android/launcher3/HebrewDateHelper;
                                  .super Ljava/lang/Object;
                                  
                                  # direct methods
                                  .method public static getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
                                      .registers 12
                                  
                                      :try_start_0
                                      new-instance v0, Landroid/icu/util/HebrewCalendar;
                                      invoke-direct {v0}, Landroid/icu/util/HebrewCalendar;-><init>()V
                                  
                                      new-instance v1, Landroid/icu/util/ULocale;
                                      const-string v2, "he_IL@calendar=hebrew"
                                      invoke-direct {v1, v2}, Landroid/icu/util/ULocale;-><init>(Ljava/lang/String;)V
                                  
                                      const/4 v2, 0x1
                                      invoke-static {v2, v1}, Landroid/icu/text/DateFormat;->getDateInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat;
                                      move-result-object v2
                                  
                                      invoke-static {}, Lcom/android/launcher3/HebrewDateHelper;->isAfterNightfall()Z
                                      move-result v3
                                      move v10, v3
                                  
                                      invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
                                      move-result-object v4
                                  
                                      invoke-virtual {v2, v4}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
                                      move-result-object v3
                                  
                                      if-eqz v3, :cond_bc
                                  
                                      const/4 v4, 0x7
                                      invoke-virtual {v0, v4}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v5
                                  
                                      if-ne v5, v4, :cond_33
                                  
                                      if-eqz v10, :cond_33
                                  
                                      const-string/jumbo v4, "יום שבת"
                                      const-string/jumbo v5, "מוצאי שבת"
                                      invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
                                      move-result-object v3
                                  
                                      :cond_33
                                      const/16 v4, 0x20
                                      invoke-virtual {v3, v4}, Ljava/lang/String;->lastIndexOf(I)I
                                      move-result v4
                                  
                                      const-string v8, ""
                                      const-string v9, ""
                                      const/4 v5, -0x1
                                  
                                      if-eq v4, v5, :cond_4b
                                  
                                      const/4 v5, 0x0
                                      invoke-virtual {v3, v5, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v8
                                  
                                      add-int/lit8 v4, v4, 0x1
                                      invoke-virtual {v3, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
                                      move-result-object v9
                                  
                                      :cond_4b
                                      const/4 v3, 0x2
                                      invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v4
                                  
                                      const/4 v5, 0x5
                                      const/4 v6, 0x1
                                      invoke-virtual {v0, v5, v6}, Landroid/icu/util/HebrewCalendar;->add(II)V
                                  
                                      invoke-virtual {v0}, Landroid/icu/util/HebrewCalendar;->getTime()Ljava/util/Date;
                                      move-result-object v5
                                      invoke-virtual {v2, v5}, Landroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      invoke-virtual {v0, v3}, Landroid/icu/util/HebrewCalendar;->get(I)I
                                      move-result v5
                                  
                                      const-string v0, ", "
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
                                      move-result v0
                                  
                                      const/4 v7, -0x1
                                  
                                      if-eq v0, v7, :cond_70
                                  
                                      add-int/lit8 v0, v0, 0x2
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_70
                                      const/16 v0, 0x20
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->lastIndexOf(I)I
                                      move-result v0
                                  
                                      if-eq v0, v7, :cond_7d
                                  
                                      const/4 v2, 0x0
                                      invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_7d
                                      if-ne v4, v5, :cond_8c
                                  
                                      const/16 v0, 0x20
                                      invoke-virtual {v6, v0}, Ljava/lang/String;->indexOf(I)I
                                      move-result v0
                                  
                                      if-eq v0, v7, :cond_8c
                                  
                                      const/4 v2, 0x0
                                      invoke-virtual {v6, v2, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
                                      move-result-object v6
                                  
                                      :cond_8c
                                      new-instance v0, Ljava/lang/StringBuilder;
                                      invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
                                  
                                      invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      const-string v2, "\n"
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      if-eqz v10, :cond_a7
                                  
                                      const-string v2, " (אור ל-"
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      const-string v2, ") "
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      goto :goto_af
                                  
                                      :cond_a7
                                      const-string v2, " "
                                      invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      :goto_af
                                      invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
                                      move-result-object v0
                                      return-object v0
                                  
                                      :cond_bc
                                      new-instance v0, Ljava/lang/StringBuilder;
                                      invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
                                  
                                      invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      const-string v1, "\n"
                                      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                      invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
                                  
                                      invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
                                      move-result-object v0
                                      return-object v0
                                      :try_end_d1
                                      .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_d1} :catch_d1
                                  
                                      :catch_d1
                                      move-exception v0
                                      return-object p0
                                  .end method
                                  
                                  .method private static isAfterNightfall()Z
                                      .registers 10
                                  
                                      invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;
                                      move-result-object v0
                                      const/4 v1, 0x6
                                      invoke-virtual {v0, v1}, Ljava/util/Calendar;->get(I)I
                                      move-result v1
                                      const/16 v2, 0xb
                                      invoke-virtual {v0, v2}, Ljava/util/Calendar;->get(I)I
                                      move-result v2
                                      const/16 v3, 0xc
                                      invoke-virtual {v0, v3}, Ljava/util/Calendar;->get(I)I
                                      move-result v3
                                      invoke-virtual {v0}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
                                      move-result-object v4
                                      invoke-virtual {v0}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
                                      move-result-object v0
                                      invoke-virtual {v4, v0}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
                                      move-result v0
                                  
                                      const-wide v4, 0x400921fb54442d18L
                                      const-wide/high16 v6, 0x4000000000000000L
                                      mul-double/2addr v4, v6
                                      add-int/lit8 v6, v1, -0x50
                                      int-to-double v6, v6
                                      mul-double/2addr v4, v6
                                      const-wide v6, 0x4076d00000000000L
                                      div-double/2addr v4, v6
                                      invoke-static {v4, v5}, Ljava/lang/Math;->sin(D)D
                                      move-result-wide v4
                                      const-wide v6, 0x3ff0cccccccccccdL
                                      mul-double/2addr v4, v6
                                      const-wide v6, 0x403247ae147ae148L
                                      add-double/2addr v4, v6
                                  
                                      if-eqz v0, :cond_48
                                      const-wide/high16 v6, 0x3ff0000000000000L
                                      add-double/2addr v4, v6
                                      :cond_48
                                  
                                      double-to-int v0, v4
                                      int-to-double v6, v0
                                      sub-double/2addr v4, v6
                                      const-wide v6, 0x404e000000000000L
                                      mul-double/2addr v4, v6
                                      double-to-int v4, v4
                                      const/4 v5, 0x1
                                  
                                      if-le v2, v0, :cond_56
                                      return v5
                                  
                                      :cond_56
                                      if-ne v2, v0, :cond_5b
                                      if-lt v3, v4, :cond_5b
                                      return v5
                                  
                                      :cond_5b
                                      const/4 v0, 0x0
                                      return v0
                                  .end method
                                  

                                  1. להוסיף את הקלאס (באותו נתיב):
                                    WorkspaceDateReceiver
                                  .class public Lcom/android/launcher3/WorkspaceDateReceiver;
                                  .super Landroid/content/BroadcastReceiver;
                                  
                                  .field private final mWorkspace:Lcom/android/launcher3/Workspace;
                                  
                                  .method public constructor <init>(Lcom/android/launcher3/Workspace;)V
                                      .registers 2
                                  
                                      .line 1
                                      invoke-direct {p0}, Landroid/content/BroadcastReceiver;-><init>()V
                                  
                                      .line 2
                                      iput-object p1, p0, Lcom/android/launcher3/WorkspaceDateReceiver;->mWorkspace:Lcom/android/launcher3/Workspace;
                                  
                                      .line 3
                                      return-void
                                  .end method
                                  
                                  .method public onReceive(Landroid/content/Context;Landroid/content/Intent;)V
                                      .registers 3
                                  
                                      .line 1
                                      iget-object p1, p0, Lcom/android/launcher3/WorkspaceDateReceiver;->mWorkspace:Lcom/android/launcher3/Workspace;
                                  
                                      if-eqz p1, :cond_end
                                  
                                      .line 2
                                      invoke-virtual {p1}, Lcom/android/launcher3/Workspace;->refreshTime()V
                                  
                                      :cond_end
                                      return-void
                                  .end method
                                  
                                  1. בקלאס Workspace (שנמצא בנתיב כדלעיל):
                                    יחסית בתחילת הקלאס (בערך שורה 46)
                                    אחרי השורה
                                  # static fields
                                  

                                  להוסיף את השורה הזאת:

                                  .field private mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                  
                                  1. באותו קלאס
                                    במתודה insertNewWorkspaceScreen (הראשונה, נראית כך):
                                  .method public insertNewWorkspaceScreen(II)Lcom/android/launcher3/CellLayout;
                                  

                                  מתחת לשורה .line 728 ישנה השורה:

                                  invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setFocusable(Z)V
                                  

                                  מיד אחריה להוסיף את השורות:

                                  # הזרקה: 2 שורות ומרכוז
                                      invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setSingleLine(Z)V
                                      const/4 v7, 0x2
                                      invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setMaxLines(I)V
                                      const/16 v7, 0x11
                                      invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setGravity(I)V
                                  


                                  אמור להראות כך:

                                      .line 728
                                      invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setFocusable(Z)V
                                      # הזרקה: 2 שורות ומרכוז
                                      invoke-virtual {v6, v5}, Landroid/widget/TextClock;->setSingleLine(Z)V
                                      const/4 v7, 0x2
                                      invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setMaxLines(I)V
                                      const/16 v7, 0x11
                                      invoke-virtual {v6, v7}, Landroid/widget/TextClock;->setGravity(I)V
                                  

                                  1. באותו קלאס
                                    במתודה refreshTime
                                    א. לשנות את המתודה לpublic
                                    ב. לחפש את השורה הזאת:
                                  invoke-direct/range {p0 .. p0}, Lcom/android/launcher3/Workspace;->refreshTime()V
                                  

                                  ולהחליף עם זאת:

                                  invoke-virtual/range {p0 .. p0}, Lcom/android/launcher3/Workspace;->refreshTime()V
                                  

                                  ג. מיד אחרי השורה הזאת (היא נמצאת פעמיים, לבצע על שני השורות שתמצאו):

                                  sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
                                  
                                  

                                  להוסיף את הקוד:

                                  invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
                                      move-result-object v1
                                  


                                  בסוף המתודה אמורה להראות כך:

                                  .method public refreshTime()V
                                      .registers 4
                                  
                                      .line 779
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
                                  
                                      move-result-object v0
                                  
                                      invoke-static {v0}, Lcom/android/launcher3/Workspace$Patterns;->update(Landroid/content/Context;)V
                                  
                                      .line 780
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateView:Landroid/widget/TextClock;
                                  
                                      sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
                                  
                                      # הזרקת התאריך העברי לפורמט 24 שעות
                                      invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
                                      move-result-object v1
                                  
                                      invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat24Hour(Ljava/lang/CharSequence;)V
                                  
                                      .line 781
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateView:Landroid/widget/TextClock;
                                  
                                      sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->dateView:Ljava/lang/String;
                                  
                                      # הזרקת התאריך העברי לפורמט 12 שעות
                                      invoke-static {v1}, Lcom/android/launcher3/HebrewDateHelper;->getCombinedDateString(Ljava/lang/String;)Ljava/lang/String;
                                      move-result-object v1
                                  
                                      invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat12Hour(Ljava/lang/CharSequence;)V
                                  
                                      .line 783
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mClockView:Landroid/widget/TextClock;
                                  
                                      .line 784
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getResources()Landroid/content/res/Resources;
                                  
                                      move-result-object v1
                                  
                                      sget v2, Lcom/android/launcher3/R$dimen;->am_pm_widget_font_size:I
                                  
                                      invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getDimension(I)F
                                  
                                      move-result v1
                                  
                                      float-to-int v1, v1
                                  
                                      sget-object v2, Lcom/android/launcher3/Workspace$Patterns;->clockView12:Ljava/lang/String;
                                  
                                      .line 783
                                      invoke-virtual {p0, v1, v2}, Lcom/android/launcher3/Workspace;->updateAmPmTextSize(ILjava/lang/String;)Ljava/lang/CharSequence;
                                  
                                      move-result-object v1
                                  
                                      invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat12Hour(Ljava/lang/CharSequence;)V
                                  
                                      .line 785
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mClockView:Landroid/widget/TextClock;
                                  
                                      sget-object v1, Lcom/android/launcher3/Workspace$Patterns;->clockView24:Ljava/lang/String;
                                  
                                      invoke-virtual {v0, v1}, Landroid/widget/TextClock;->setFormat24Hour(Ljava/lang/CharSequence;)V
                                  
                                      .line 788
                                      return-void
                                  .end method
                                  

                                  1. במתודה onAttachedToWindow
                                    א. להוסיף רגיסטר אחד (להחליף מ3 ל4).
                                    ב. בסוף המתודה ממש לפני return-void, להוסיף את הקוד:
                                  # הזרקה: רישום המאזין
                                      new-instance v0, Lcom/android/launcher3/WorkspaceDateReceiver;
                                      invoke-direct {v0, p0}, Lcom/android/launcher3/WorkspaceDateReceiver;-><init>(Lcom/android/launcher3/Workspace;)V
                                      iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                  
                                      new-instance v1, Landroid/content/IntentFilter;
                                      invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
                                  
                                      const-string v2, "android.intent.action.TIME_TICK"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.TIME_SET"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.TIMEZONE_CHANGED"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.DATE_CHANGED"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
                                      move-result-object v2
                                      invoke-virtual {v2, v0, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
                                  


                                  בסוף המתודה אמורה להראות כך:

                                  .method protected onAttachedToWindow()V
                                      .registers 4
                                  
                                      .line 1490
                                      invoke-super {p0}, Lcom/android/launcher3/PagedView;->onAttachedToWindow()V
                                  
                                      .line 1491
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mWallpaperOffset:Lcom/android/launcher3/util/WallpaperOffsetInterpolator;
                                  
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getWindowToken()Landroid/os/IBinder;
                                  
                                      move-result-object v1
                                  
                                      invoke-virtual {v0, v1}, Lcom/android/launcher3/util/WallpaperOffsetInterpolator;->setWindowToken(Landroid/os/IBinder;)V
                                  
                                      .line 1492
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->computeScroll()V
                                  
                                      # רישום המאזין לאירועי שעון
                                      new-instance v0, Lcom/android/launcher3/WorkspaceDateReceiver;
                                      invoke-direct {v0, p0}, Lcom/android/launcher3/WorkspaceDateReceiver;-><init>(Lcom/android/launcher3/Workspace;)V
                                      iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                  
                                      new-instance v1, Landroid/content/IntentFilter;
                                      invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
                                  
                                      const-string v2, "android.intent.action.TIME_TICK"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.TIME_SET"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.TIMEZONE_CHANGED"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      const-string v2, "android.intent.action.DATE_CHANGED"
                                      invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
                                  
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
                                      move-result-object v2
                                      invoke-virtual {v2, v0, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
                                  
                                      .line 1493
                                      return-void
                                  .end method
                                  

                                  1. במתודה onDetachedFromWindow (נמצאת ממש אחרי המתודה הקודמת)
                                    כמו קודם, בסוף המתודה ממש לפני הreturn-void, להוסיף את הקוד הבא:
                                  # הזרקה: ביטול המאזין
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                      if-eqz v0, :cond_unregister_end
                                  
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
                                      move-result-object v1
                                      invoke-virtual {v1, v0}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
                                  
                                      const/4 v0, 0x0
                                      iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                  
                                      :cond_unregister_end
                                  


                                  בסוף המתודה אמורה להראות כך:

                                  .method protected onDetachedFromWindow()V
                                      .registers 3
                                  
                                      .line 1496
                                      invoke-super {p0}, Lcom/android/launcher3/PagedView;->onDetachedFromWindow()V
                                  
                                      .line 1497
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mWallpaperOffset:Lcom/android/launcher3/util/WallpaperOffsetInterpolator;
                                  
                                      const/4 v1, 0x0
                                  
                                      invoke-virtual {v0, v1}, Lcom/android/launcher3/util/WallpaperOffsetInterpolator;->setWindowToken(Landroid/os/IBinder;)V
                                  
                                      # מחיקת המאזין כדי למנוע דליפת זיכרון
                                      iget-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                      if-eqz v0, :cond_unregister_end
                                  
                                      invoke-virtual {p0}, Lcom/android/launcher3/Workspace;->getContext()Landroid/content/Context;
                                      move-result-object v1
                                      invoke-virtual {v1, v0}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
                                  
                                      const/4 v0, 0x0
                                      iput-object v0, p0, Lcom/android/launcher3/Workspace;->mDateReceiver:Lcom/android/launcher3/WorkspaceDateReceiver;
                                  
                                      :cond_unregister_end
                                  
                                      .line 1498
                                      return-void
                                  .end method
                                  

                                  בהצלחה!

                                  א מחובר
                                  א מחובר
                                  אברהם אבינו 1
                                  כתב נערך לאחרונה על ידי
                                  #20

                                  @lilo159 כתב במדריך | הוספת תאריך עברי למסך הבית בגרסה הרגילה של f21 pro:

                                  הוספת תאריך עברי למסך הבית

                                  תודה רבה!!
                                  השתמשתי בזה, וזה מאוד עזר לי

                                  יש איך לעשות את זה גם במסך נעילה?

                                  תגובה 1 תגובה אחרונה
                                  0

                                  • התחברות

                                  • אין לך חשבון עדיין? הרשמה

                                  • התחברו או הירשמו כדי לחפש.
                                  • פוסט ראשון
                                    פוסט אחרון
                                  0
                                  • חוקי הפורום
                                  • פופולרי
                                  • לא נפתר
                                  • משתמשים
                                  • חיפוש גוגל בפורום
                                  • צור קשר