.class public Lcom/finddreams/languagelib/MultiLanguageUtil; .super Ljava/lang/Object; .source "MultiLanguageUtil.java" # static fields .field public static final SAVE_LANGUAGE:Ljava/lang/String; = "save_language" .field private static final TAG:Ljava/lang/String; = "MultiLanguageUtil" .field private static instance:Lcom/finddreams/languagelib/MultiLanguageUtil; # instance fields .field private mContext:Landroid/content/Context; # direct methods .method private constructor (Landroid/content/Context;)V .registers 2 .line 45 invoke-direct {p0}, Ljava/lang/Object;->()V .line 46 iput-object p1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; return-void .end method .method public static attachBaseContext(Landroid/content/Context;)Landroid/content/Context; .registers 1 .line 145 invoke-static {p0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->createConfigurationResources(Landroid/content/Context;)Landroid/content/Context; move-result-object p0 return-object p0 .end method .method private static createConfigurationResources(Landroid/content/Context;)Landroid/content/Context; .registers 3 .line 154 invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 .line 155 invoke-virtual {v0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration; move-result-object v0 .line 156 invoke-static {}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getInstance()Lcom/finddreams/languagelib/MultiLanguageUtil; move-result-object v1 invoke-direct {v1}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getLanguageLocale()Ljava/util/Locale; move-result-object v1 .line 157 invoke-virtual {v0, v1}, Landroid/content/res/Configuration;->setLocale(Ljava/util/Locale;)V .line 158 invoke-virtual {p0, v0}, Landroid/content/Context;->createConfigurationContext(Landroid/content/res/Configuration;)Landroid/content/Context; move-result-object p0 return-object p0 .end method .method public static getInstance()Lcom/finddreams/languagelib/MultiLanguageUtil; .registers 2 .line 39 sget-object v0, Lcom/finddreams/languagelib/MultiLanguageUtil;->instance:Lcom/finddreams/languagelib/MultiLanguageUtil; if-eqz v0, :cond_5 return-object v0 .line 40 :cond_5 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "You must be init MultiLanguageUtil first" invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method .method private getLanguageLocale()Ljava/util/Locale; .registers 4 .line 71 iget-object v0, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; invoke-static {v0}, Lcom/finddreams/languagelib/CommSharedUtil;->getInstance(Landroid/content/Context;)Lcom/finddreams/languagelib/CommSharedUtil; move-result-object v0 const-string v1, "save_language" const/4 v2, 0x0 invoke-virtual {v0, v1, v2}, Lcom/finddreams/languagelib/CommSharedUtil;->getInt(Ljava/lang/String;I)I move-result v0 if-nez v0, :cond_14 .line 73 invoke-virtual {p0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getSysLocale()Ljava/util/Locale; move-result-object v0 return-object v0 :cond_14 const/4 v1, 0x1 if-ne v0, v1, :cond_1a .line 76 sget-object v0, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale; return-object v0 :cond_1a const/4 v1, 0x2 if-ne v0, v1, :cond_20 .line 78 sget-object v0, Ljava/util/Locale;->SIMPLIFIED_CHINESE:Ljava/util/Locale; return-object v0 :cond_20 const/4 v1, 0x3 if-ne v0, v1, :cond_26 .line 80 sget-object v0, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale; return-object v0 .line 82 :cond_26 invoke-virtual {p0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getSysLocale()Ljava/util/Locale; move-result-object v0 invoke-direct {p0, v0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getSystemLanguage(Ljava/util/Locale;)Ljava/lang/String; .line 84 sget-object v0, Ljava/util/Locale;->SIMPLIFIED_CHINESE:Ljava/util/Locale; return-object v0 .end method .method private getSystemLanguage(Ljava/util/Locale;)Ljava/lang/String; .registers 4 .line 88 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-virtual {p1}, Ljava/util/Locale;->getLanguage()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "_" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p1}, Ljava/util/Locale;->getCountry()Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .end method .method public static init(Landroid/content/Context;)V .registers 3 .line 29 sget-object v0, Lcom/finddreams/languagelib/MultiLanguageUtil;->instance:Lcom/finddreams/languagelib/MultiLanguageUtil; if-nez v0, :cond_17 .line 30 const-class v0, Lcom/finddreams/languagelib/MultiLanguageUtil; monitor-enter v0 .line 31 :try_start_7 sget-object v1, Lcom/finddreams/languagelib/MultiLanguageUtil;->instance:Lcom/finddreams/languagelib/MultiLanguageUtil; if-nez v1, :cond_12 .line 32 new-instance v1, Lcom/finddreams/languagelib/MultiLanguageUtil; invoke-direct {v1, p0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->(Landroid/content/Context;)V sput-object v1, Lcom/finddreams/languagelib/MultiLanguageUtil;->instance:Lcom/finddreams/languagelib/MultiLanguageUtil; .line 34 :cond_12 monitor-exit v0 goto :goto_17 :catchall_14 move-exception p0 monitor-exit v0 :try_end_16 .catchall {:try_start_7 .. :try_end_16} :catchall_14 throw p0 :cond_17 :goto_17 return-void .end method # virtual methods .method public getLanguageName(Landroid/content/Context;)Ljava/lang/String; .registers 4 .line 115 invoke-static {p1}, Lcom/finddreams/languagelib/CommSharedUtil;->getInstance(Landroid/content/Context;)Lcom/finddreams/languagelib/CommSharedUtil; move-result-object p1 const-string v0, "save_language" const/4 v1, 0x0 invoke-virtual {p1, v0, v1}, Lcom/finddreams/languagelib/CommSharedUtil;->getInt(Ljava/lang/String;I)I move-result p1 const/4 v0, 0x1 if-ne p1, v0, :cond_17 .line 117 iget-object p1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; sget v0, Lcom/finddreams/languagelib/R$string;->setting_language_english:I invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String; move-result-object p1 return-object p1 :cond_17 const/4 v0, 0x2 if-ne p1, v0, :cond_23 .line 119 iget-object p1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; sget v0, Lcom/finddreams/languagelib/R$string;->setting_simplified_chinese:I invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String; move-result-object p1 return-object p1 :cond_23 const/4 v0, 0x3 if-ne p1, v0, :cond_2f .line 121 iget-object p1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; sget v0, Lcom/finddreams/languagelib/R$string;->setting_traditional_chinese:I invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String; move-result-object p1 return-object p1 .line 123 :cond_2f iget-object p1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; sget v0, Lcom/finddreams/languagelib/R$string;->setting_language_auto:I invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String; move-result-object p1 return-object p1 .end method .method public getLanguageType()I .registers 4 .line 131 iget-object v0, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; invoke-static {v0}, Lcom/finddreams/languagelib/CommSharedUtil;->getInstance(Landroid/content/Context;)Lcom/finddreams/languagelib/CommSharedUtil; move-result-object v0 const-string v1, "save_language" const/4 v2, 0x0 invoke-virtual {v0, v1, v2}, Lcom/finddreams/languagelib/CommSharedUtil;->getInt(Ljava/lang/String;I)I move-result v0 const/4 v1, 0x2 if-ne v0, v1, :cond_11 return v1 :cond_11 const/4 v1, 0x3 if-ne v0, v1, :cond_15 return v1 :cond_15 if-nez v0, :cond_18 return v2 :cond_18 return v0 .end method .method public getSysLocale()Ljava/util/Locale; .registers 3 .line 96 invoke-static {}, Landroid/os/LocaleList;->getDefault()Landroid/os/LocaleList; move-result-object v0 const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/os/LocaleList;->get(I)Ljava/util/Locale; move-result-object v0 return-object v0 .end method .method public setConfiguration()V .registers 4 .line 53 invoke-direct {p0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getLanguageLocale()Ljava/util/Locale; move-result-object v0 .line 54 iget-object v1, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v1 invoke-virtual {v1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration; move-result-object v1 .line 56 invoke-virtual {v1, v0}, Landroid/content/res/Configuration;->setLocale(Ljava/util/Locale;)V .line 60 iget-object v0, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 .line 61 invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; move-result-object v2 .line 62 invoke-virtual {v0, v1, v2}, Landroid/content/res/Resources;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;)V return-void .end method .method public updateLanguage(I)V .registers 4 .line 109 iget-object v0, p0, Lcom/finddreams/languagelib/MultiLanguageUtil;->mContext:Landroid/content/Context; invoke-static {v0}, Lcom/finddreams/languagelib/CommSharedUtil;->getInstance(Landroid/content/Context;)Lcom/finddreams/languagelib/CommSharedUtil; move-result-object v0 const-string v1, "save_language" invoke-virtual {v0, v1, p1}, Lcom/finddreams/languagelib/CommSharedUtil;->putInt(Ljava/lang/String;I)V .line 110 invoke-static {}, Lcom/finddreams/languagelib/MultiLanguageUtil;->getInstance()Lcom/finddreams/languagelib/MultiLanguageUtil; move-result-object v0 invoke-virtual {v0}, Lcom/finddreams/languagelib/MultiLanguageUtil;->setConfiguration()V .line 111 invoke-static {}, Lorg/greenrobot/eventbus/EventBus;->getDefault()Lorg/greenrobot/eventbus/EventBus; move-result-object v0 new-instance v1, Lcom/finddreams/languagelib/OnChangeLanguageEvent; invoke-direct {v1, p1}, Lcom/finddreams/languagelib/OnChangeLanguageEvent;->(I)V invoke-virtual {v0, v1}, Lorg/greenrobot/eventbus/EventBus;->post(Ljava/lang/Object;)V return-void .end method