Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
L
lib_base
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sikang
lib_base
Commits
012ee973
Commit
012ee973
authored
Nov 02, 2018
by
sikang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
UPDATE
parent
2b413d0c
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
162 additions
and
6 deletions
+162
-6
build.gradle
+2
-0
src/main/AndroidManifest.xml
+3
-0
src/main/java/tech/starwin/LibConfig.java
+42
-0
src/main/java/tech/starwin/base/BaseActivity.java
+7
-4
src/main/java/tech/starwin/base/BaseApplication.java
+39
-0
src/main/java/tech/starwin/mvp/beans/LatestLoanAppBean.java
+2
-1
src/main/java/tech/starwin/utils/context_utils/AppLanguageUtils.java
+66
-0
src/main/java/tech/starwin/utils/ui_utils/DialogFactory.java
+1
-1
No files found.
build.gradle
View file @
012ee973
...
...
@@ -43,6 +43,8 @@ dependencies {
//noinspection GradleCompatible
androidTestImplementation
'com.android.support.test:runner:1.0.2'
androidTestImplementation
'com.android.support.test.espresso:espresso-core:3.0.2'
// multidex
api
'com.android.support:multidex:1.0.3'
//support包
api
"com.android.support:appcompat-v7:$rootProject.ext.supportLibraryVersion"
...
...
src/main/AndroidManifest.xml
View file @
012ee973
...
...
@@ -22,6 +22,9 @@
<uses-permission
android:name=
"android.permission.READ_SMS"
/>
<!--发送短信-->
<uses-permission
android:name=
"android.permission.SEND_SMS"
/>
<uses-permission
android:name=
"android.permission.CHANGE_CONFIGURATION"
tools:ignore=
"ProtectedPermissions"
/>
<!--读取手机状态-->
<uses-permission
android:name=
"android.permission.READ_PHONE_STATE"
/>
<!--访问手机网络状态-->
...
...
src/main/java/tech/starwin/LibConfig.java
View file @
012ee973
package
tech
.
starwin
;
import
android.app.Application
;
import
android.content.BroadcastReceiver
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.content.IntentFilter
;
import
android.content.res.Configuration
;
import
android.os.Build
;
import
android.text.TextUtils
;
import
android.util.DisplayMetrics
;
import
android.view.View
;
import
com.google.firebase.remoteconfig.FirebaseRemoteConfig
;
...
...
@@ -17,6 +24,8 @@ import com.scwang.smartrefresh.layout.header.ClassicsHeader;
import
com.tencent.bugly.crashreport.CrashReport
;
import
java.util.Locale
;
import
cn.fraudmetrix.octopus.aspirit.main.OctopusManager
;
import
tech.starwin.database.DataBaseHelper
;
import
tech.starwin.network.Gateway
;
...
...
@@ -65,6 +74,7 @@ public class LibConfig {
public
static
String
ZENDESK_OAUTH_CLIENT_ID
;
public
static
String
TONGDUN_PARENT_CODE
;
public
static
String
TONGDUN_PARENT_KEY
;
public
static
String
LANGUAGE
=
"en"
;
public
static
int
HARVESTER_PORT
;
//
public
static
int
LOADING_ICON
;
//loading图标
public
static
int
LOADING_BACKGROUND
;
//loading旋转背景
...
...
@@ -85,6 +95,11 @@ public class LibConfig {
public
static
void
initLib
(
Application
application
)
{
if
(
application
!=
null
)
{
CONTEXT
=
application
;
// if (!TextUtils.isEmpty(LANGUAGE)) {
// loadAppLanguage(application, LANGUAGE);
// }
//上传工具
UploadManager
.
init
(
CONTEXT
);
...
...
@@ -120,6 +135,33 @@ public class LibConfig {
}
}
/**
* 切换应用语言环境
*
* @param context
*/
private
static
void
loadAppLanguage
(
Context
context
,
String
language
)
{
Locale
locale
;
if
(
language
.
equals
(
"zh"
))
{
locale
=
Locale
.
SIMPLIFIED_CHINESE
;
}
else
if
(
language
.
equals
(
"en"
))
{
locale
=
Locale
.
US
;
}
else
{
return
;
}
Configuration
config
=
context
.
getResources
().
getConfiguration
();
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
JELLY_BEAN_MR1
)
{
config
.
setLocale
(
locale
);
}
else
{
//noinspection deprecation
config
.
locale
=
locale
;
}
context
.
getResources
().
updateConfiguration
(
config
,
context
.
getResources
().
getDisplayMetrics
());
Locale
.
setDefault
(
locale
);
}
/**
* 用于在Base 中 实现Butterknife.bind()的功能
...
...
src/main/java/tech/starwin/base/BaseActivity.java
View file @
012ee973
package
tech
.
starwin
.
base
;
import
android.
app.Activity
;
import
android.
content.Context
;
import
android.os.Bundle
;
import
android.support.annotation.CheckResult
;
import
android.support.annotation.IdRes
;
...
...
@@ -16,7 +16,6 @@ import android.view.LayoutInflater;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.FrameLayout
;
import
android.widget.RelativeLayout
;
import
com.google.firebase.messaging.RemoteMessage
;
import
com.qmuiteam.qmui.widget.QMUITopBar
;
...
...
@@ -31,7 +30,7 @@ import tech.starwin.LibConfig;
import
tech.starwin.R
;
import
tech.starwin.service.MsgHandleService
;
import
tech.starwin.mvp.IView
;
import
tech.starwin.utils.
Log
Utils
;
import
tech.starwin.utils.
context_utils.AppLanguage
Utils
;
import
tech.starwin.utils.PresenterHoler
;
import
tech.starwin.utils.context_utils.FragmentLauncher
;
import
tech.starwin.utils.ui_utils.DialogFactory
;
...
...
@@ -76,6 +75,11 @@ public abstract class BaseActivity extends AppCompatActivity implements IView {
@Override
protected
void
attachBaseContext
(
Context
newBase
)
{
super
.
attachBaseContext
(
AppLanguageUtils
.
attachBaseContext
(
newBase
,
LibConfig
.
LANGUAGE
));
}
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
TAG
=
getClass
().
getSimpleName
();
...
...
@@ -132,7 +136,6 @@ public abstract class BaseActivity extends AppCompatActivity implements IView {
presenterHelper
.
onDestory
();
}
@Override
@NonNull
@CheckResult
...
...
src/main/java/tech/starwin/base/BaseApplication.java
0 → 100644
View file @
012ee973
package
tech
.
starwin
.
base
;
import
android.content.Context
;
import
android.content.res.Configuration
;
import
android.support.multidex.MultiDexApplication
;
import
tech.starwin.LibConfig
;
import
tech.starwin.utils.context_utils.AppLanguageUtils
;
/**
* Created by SiKang on 2018/11/2.
*/
public
abstract
class
BaseApplication
extends
MultiDexApplication
{
@Override
protected
void
attachBaseContext
(
Context
base
)
{
initLibCnofig
();
super
.
attachBaseContext
(
AppLanguageUtils
.
attachBaseContext
(
base
,
LibConfig
.
LANGUAGE
));
}
@Override
public
void
onConfigurationChanged
(
Configuration
newConfig
)
{
super
.
onConfigurationChanged
(
newConfig
);
AppLanguageUtils
.
setLanguage
(
this
,
LibConfig
.
LANGUAGE
);
}
@Override
public
void
onCreate
()
{
super
.
onCreate
();
AppLanguageUtils
.
setLanguage
(
this
,
LibConfig
.
LANGUAGE
);
LibConfig
.
initLib
(
this
);
}
public
abstract
void
initLibCnofig
();
}
src/main/java/tech/starwin/mvp/beans/LatestLoanAppBean.java
View file @
012ee973
...
...
@@ -28,7 +28,8 @@ public class LatestLoanAppBean extends LoanAppBeanFather implements Parcelable {
* totalAmount ; 0
*/
public
static
final
String
WITHDRAWN
=
"WITHDRAWN"
;
//撤回
public
static
final
String
GRACE_PERIOD
=
"GRACE_PERIOD"
;
//撤回
public
static
final
String
OVERDUE
=
"OVERDUE"
;
//逾期
public
static
final
String
CURRENT
=
"CURRENT"
;
//已放款
public
static
final
String
SUBMITTED
=
"SUBMITTED"
;
//已经提交
...
...
src/main/java/tech/starwin/utils/context_utils/AppLanguageUtils.java
0 → 100644
View file @
012ee973
package
tech
.
starwin
.
utils
.
context_utils
;
import
android.annotation.TargetApi
;
import
android.content.Context
;
import
android.content.res.Configuration
;
import
android.content.res.Resources
;
import
android.os.Build
;
import
android.os.LocaleList
;
import
android.util.DisplayMetrics
;
import
java.util.HashMap
;
import
java.util.Locale
;
public
class
AppLanguageUtils
{
private
static
String
currentLanguage
=
""
;
public
static
HashMap
<
String
,
Locale
>
allLanguages
=
new
HashMap
<
String
,
Locale
>(
8
)
{{
put
(
"en"
,
Locale
.
ENGLISH
);
put
(
"zh"
,
Locale
.
SIMPLIFIED_CHINESE
);
put
(
"in"
,
Locale
.
FRANCE
);
//设置一个未翻译的语言,使用默认values,即印尼语
}};
@SuppressWarnings
(
"deprecation"
)
public
static
void
setLanguage
(
Context
context
,
String
language
)
{
Resources
resources
=
context
.
getApplicationContext
().
getResources
();
DisplayMetrics
dm
=
resources
.
getDisplayMetrics
();
Configuration
config
=
resources
.
getConfiguration
();
Locale
locale
=
getLocale
(
language
);
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
JELLY_BEAN_MR1
)
{
config
.
setLocale
(
locale
);
}
else
{
config
.
locale
=
locale
;
}
resources
.
updateConfiguration
(
config
,
dm
);
}
public
static
Locale
getLocale
(
String
language
)
{
if
(
allLanguages
.
containsKey
(
language
))
{
return
allLanguages
.
get
(
language
);
}
else
{
return
Locale
.
getDefault
();
}
}
public
static
Context
attachBaseContext
(
Context
context
,
String
language
)
{
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
N
)
{
return
updateResources
(
context
,
getLocale
(
language
));
}
else
{
return
context
;
}
}
@TargetApi
(
Build
.
VERSION_CODES
.
N
)
private
static
Context
updateResources
(
Context
context
,
Locale
locale
)
{
Resources
resources
=
context
.
getResources
();
Configuration
configuration
=
resources
.
getConfiguration
();
configuration
.
setLocale
(
locale
);
configuration
.
setLocales
(
new
LocaleList
(
locale
));
return
context
.
createConfigurationContext
(
configuration
);
}
}
\ No newline at end of file
src/main/java/tech/starwin/utils/ui_utils/DialogFactory.java
View file @
012ee973
...
...
@@ -52,7 +52,7 @@ public class DialogFactory {
* 创建一个带有文本提示的对话框
*/
public
static
void
showMessageDialog
(
Context
context
,
String
msg
)
{
createMessageDialog
(
context
,
"Tip"
,
msg
,
"ok"
).
show
();
createMessageDialog
(
context
,
"Tip"
,
msg
,
"ok"
,
null
).
show
();
}
public
static
Dialog
createMessageDialog
(
Context
context
,
String
title
,
String
message
,
String
btnText
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment