Skip to content

Commit d785a06

Browse files
committed
Improve AutoSizeConfig#init
1 parent 6c462bd commit d785a06

File tree

1 file changed

+26
-21
lines changed

1 file changed

+26
-21
lines changed

autosize/src/main/java/me/jessyan/autosize/AutoSizeConfig.java

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -123,35 +123,35 @@ public Application getApplication() {
123123
}
124124

125125
/**
126-
* 建议在 Application 启动时完成初始化, 只能调用一次初始化方法, 否则报错
126+
* v0.6.0 以后, 框架会在 APP 启动时自动调用此方法进行初始化, 使用者无需手动初始化, 初始化方法只能调用一次, 否则报错
127127
* 此方法默认使用以宽度进行等比例适配, 如想使用以高度进行等比例适配, 请调用 {@link #init(Application, boolean)}
128128
*
129129
* @param application {@link Application}
130130
*/
131-
public AutoSizeConfig init(Application application) {
131+
AutoSizeConfig init(Application application) {
132132
return init(application, true, null);
133133
}
134134

135135
/**
136-
* 建议在 Application 启动时完成初始化, 只能调用一次初始化方法, 否则报错
136+
* v0.6.0 以后, 框架会在 APP 启动时自动调用此方法进行初始化, 使用者无需手动初始化, 初始化方法只能调用一次, 否则报错
137137
* 此方法使用默认的 {@link AutoAdaptStrategy} 策略, 如想使用自定义的 {@link AutoAdaptStrategy} 策略
138138
* 请调用 {@link #init(Application, boolean, AutoAdaptStrategy)}
139139
*
140140
* @param application {@link Application}
141141
* @param isBaseOnWidth 详情请查看 {@link #isBaseOnWidth} 的注释
142142
*/
143-
public AutoSizeConfig init(Application application, boolean isBaseOnWidth) {
143+
AutoSizeConfig init(Application application, boolean isBaseOnWidth) {
144144
return init(application, isBaseOnWidth, null);
145145
}
146146

147147
/**
148-
* 建议在 Application 启动时完成初始化, 只能调用一次初始化方法, 否则报错
148+
* v0.6.0 以后, 框架会在 APP 启动时自动调用此方法进行初始化, 使用者无需手动初始化, 初始化方法只能调用一次, 否则报错
149149
*
150150
* @param application {@link Application}
151151
* @param isBaseOnWidth 详情请查看 {@link #isBaseOnWidth} 的注释
152152
* @param strategy {@link AutoAdaptStrategy}, 传 {@code null} 则使用 {@link DefaultAutoAdaptStrategy}
153153
*/
154-
public AutoSizeConfig init(final Application application, boolean isBaseOnWidth, AutoAdaptStrategy strategy) {
154+
AutoSizeConfig init(final Application application, boolean isBaseOnWidth, AutoAdaptStrategy strategy) {
155155
Preconditions.checkArgument(mInitDensity == -1, "AutoSizeConfig#init() can only be called once");
156156
Preconditions.checkNotNull(application, "application == null");
157157
this.mApplication = application;
@@ -366,22 +366,27 @@ public float getInitScaledDensity() {
366366
*
367367
* @param context {@link Context}
368368
*/
369-
private void getMetaData(Context context) {
370-
PackageManager packageManager = context.getPackageManager();
371-
ApplicationInfo applicationInfo;
372-
try {
373-
applicationInfo = packageManager.getApplicationInfo(context
374-
.getPackageName(), PackageManager.GET_META_DATA);
375-
if (applicationInfo != null && applicationInfo.metaData != null) {
376-
if (applicationInfo.metaData.containsKey(KEY_DESIGN_WIDTH_IN_DP)) {
377-
mDesignWidthInDp = (int) applicationInfo.metaData.get(KEY_DESIGN_WIDTH_IN_DP);
378-
}
379-
if (applicationInfo.metaData.containsKey(KEY_DESIGN_HEIGHT_IN_DP)) {
380-
mDesignHeightInDp = (int) applicationInfo.metaData.get(KEY_DESIGN_HEIGHT_IN_DP);
369+
private void getMetaData(final Context context) {
370+
new Thread(new Runnable() {
371+
@Override
372+
public void run() {
373+
PackageManager packageManager = context.getPackageManager();
374+
ApplicationInfo applicationInfo;
375+
try {
376+
applicationInfo = packageManager.getApplicationInfo(context
377+
.getPackageName(), PackageManager.GET_META_DATA);
378+
if (applicationInfo != null && applicationInfo.metaData != null) {
379+
if (applicationInfo.metaData.containsKey(KEY_DESIGN_WIDTH_IN_DP)) {
380+
mDesignWidthInDp = (int) applicationInfo.metaData.get(KEY_DESIGN_WIDTH_IN_DP);
381+
}
382+
if (applicationInfo.metaData.containsKey(KEY_DESIGN_HEIGHT_IN_DP)) {
383+
mDesignHeightInDp = (int) applicationInfo.metaData.get(KEY_DESIGN_HEIGHT_IN_DP);
384+
}
385+
}
386+
} catch (PackageManager.NameNotFoundException e) {
387+
e.printStackTrace();
381388
}
382389
}
383-
} catch (PackageManager.NameNotFoundException e) {
384-
e.printStackTrace();
385-
}
390+
}).start();
386391
}
387392
}

0 commit comments

Comments
 (0)