Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
android-koreadc-client-aar
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
郑鹏
android-koreadc-client-aar
Commits
d3e7306b
Commit
d3e7306b
authored
Jan 08, 2020
by
郑鹏
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更换应用权限请求
parent
cd442f97
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
131 additions
and
105 deletions
+131
-105
app-release.apk
app/release/app-release.apk
+0
-0
MainActivity.kt
app/src/main/java/cn/dankal/client/MainActivity.kt
+23
-17
BaseActivity.java
...n/java/cn/dankal/basiclib/base/activity/BaseActivity.java
+43
-43
BaseFragment.java
...n/java/cn/dankal/basiclib/base/fragment/BaseFragment.java
+41
-30
LoginActivity.kt
...-user/src/main/java/cn/dankal/user/login/LoginActivity.kt
+24
-15
No files found.
app/release/app-release.apk
View file @
d3e7306b
No preview for this file type
app/src/main/java/cn/dankal/client/MainActivity.kt
View file @
d3e7306b
...
@@ -10,6 +10,7 @@ import android.support.v4.app.ActivityCompat
...
@@ -10,6 +10,7 @@ import android.support.v4.app.ActivityCompat
import
android.support.v4.app.Fragment
import
android.support.v4.app.Fragment
import
android.support.v4.app.FragmentManager
import
android.support.v4.app.FragmentManager
import
android.support.v4.app.FragmentPagerAdapter
import
android.support.v4.app.FragmentPagerAdapter
import
android.support.v4.content.ContextCompat
import
android.support.v4.view.ViewPager
import
android.support.v4.view.ViewPager
import
android.text.TextUtils
import
android.text.TextUtils
import
android.util.Log
import
android.util.Log
...
@@ -33,20 +34,19 @@ import cn.dankal.client.ui.home.ScanResultActivity
...
@@ -33,20 +34,19 @@ import cn.dankal.client.ui.home.ScanResultActivity
import
cn.dankal.client.ui.home.details.MerchantDetailsActivity
import
cn.dankal.client.ui.home.details.MerchantDetailsActivity
import
cn.dankal.client.ui.personal.PersonalFragment
import
cn.dankal.client.ui.personal.PersonalFragment
import
cn.dankal.client.ui.shop.ShopFragment
import
cn.dankal.client.ui.shop.ShopFragment
import
cn.dankal.entities.event.LocationChangeEvent
import
com.alibaba.android.arouter.facade.annotation.Route
import
com.alibaba.android.arouter.facade.annotation.Route
import
com.google.android.gms.maps.GoogleMap
import
com.google.android.gms.maps.GoogleMap
import
com.google.android.gms.maps.OnMapReadyCallback
import
com.google.android.gms.maps.OnMapReadyCallback
import
com.google.android.gms.tasks.OnCompleteListener
import
com.google.android.gms.tasks.OnCompleteListener
import
com.google.firebase.iid.FirebaseInstanceId
import
com.google.firebase.iid.FirebaseInstanceId
import
com.google.gson.Gson
import
com.google.gson.Gson
import
com.
yanzhenjie.permission.AndPermission
import
com.
tbruyelle.rxpermissions2.RxPermissions
import
com.yanzhenjie.permission.Permission
import
com.yanzhenjie.permission.Permission
import
com.yzq.zxinglibrary.common.Constant
import
com.yzq.zxinglibrary.common.Constant
import
io.reactivex.disposables.Disposable
import
io.reactivex.disposables.Disposable
import
io.reactivex.functions.Consumer
import
kotlinx.android.synthetic.main.activity_main.*
import
kotlinx.android.synthetic.main.activity_main.*
import
okhttp3.ResponseBody
import
okhttp3.ResponseBody
import
org.greenrobot.eventbus.EventBus
import
java.lang.reflect.Field
import
java.lang.reflect.Field
@Route
(
path
=
MAIN
)
@Route
(
path
=
MAIN
)
...
@@ -70,6 +70,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
...
@@ -70,6 +70,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
val
ITEM_CURRENT
=
3
val
ITEM_CURRENT
=
3
// lateinit var commonDialog: CommonDialog
// lateinit var commonDialog: CommonDialog
private
var
mRxPermissions
:
RxPermissions
?
=
null
private
var
mMap
:
GoogleMap
?
=
null
private
var
mMap
:
GoogleMap
?
=
null
...
@@ -92,6 +93,8 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
...
@@ -92,6 +93,8 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
}
}
override
fun
initComponents
()
{
override
fun
initComponents
()
{
mRxPermissions
=
RxPermissions
(
this
)
uploadFireBaseToken
()
uploadFireBaseToken
()
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
M
)
{
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
M
)
{
if
(
ActivityCompat
.
checkSelfPermission
(
this
,
if
(
ActivityCompat
.
checkSelfPermission
(
this
,
...
@@ -270,29 +273,32 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
...
@@ -270,29 +273,32 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
private
fun
requestPermission
()
{
private
fun
requestPermission
()
{
AndPermission
.
with
(
this
)
mRxPermissions
?.
let
{
.
runtime
()
it
.
request
(
Permission
.
ACCESS_COARSE_LOCATION
,
Permission
.
ACCESS_FINE_LOCATION
).
subscribe
({
.
permission
(
Permission
.
ACCESS_COARSE_LOCATION
,
Permission
.
ACCESS_FINE_LOCATION
)
if
(
it
)
{
.
onGranted
{
//权限被允许
EventBus
.
getDefault
().
post
(
LocationChangeEvent
())
initLocation
()
}
}
else
{
.
onDenied
{
val
builder
=
CommonDialog
.
Builder
(
this
)
val
builder
=
CommonDialog
.
Builder
(
this
)
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
))
builder
.
setTitle
(
getString
(
cn
.
dankal
.
user
.
R
.
string
.
prohibiting_access_will_affect_your_normal_use
))
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
builder
.
setNegativeButton
(
getString
(
cn
.
dankal
.
user
.
R
.
string
.
refuse
),
resources
.
getColor
(
R
.
color
.
color14
))
{
ContextCompat
.
getColor
(
this
,
cn
.
dankal
.
user
.
R
.
color
.
color14
))
{
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
))
ToastUtils
.
showShort
(
getString
(
cn
.
dankal
.
user
.
R
.
string
.
failed_to_obtain_permission
))
commonDialog
.
dismiss
()
commonDialog
.
dismiss
()
}
}
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
builder
.
setPositiveButton
(
getString
(
cn
.
dankal
.
user
.
R
.
string
.
agree_to_open
),
resources
.
getColor
(
R
.
color
.
colorPrimary
))
{
ContextCompat
.
getColor
(
this
,
cn
.
dankal
.
user
.
R
.
color
.
colorPrimary
))
{
toSelfSetting
()
toSelfSetting
()
commonDialog
.
dismiss
()
commonDialog
.
dismiss
()
}
}
commonDialog
=
builder
.
create
()
commonDialog
=
builder
.
create
()
commonDialog
.
show
()
commonDialog
.
show
()
}.
start
()
}
},
{
})
}
}
}
...
...
baselib/src/main/java/cn/dankal/basiclib/base/activity/BaseActivity.java
View file @
d3e7306b
package
cn
.
dankal
.
basiclib
.
base
.
activity
;
package
cn
.
dankal
.
basiclib
.
base
.
activity
;
import
android.Manifest
;
import
android.Manifest
;
import
android.annotation.SuppressLint
;
import
android.app.Activity
;
import
android.app.Activity
;
import
android.app.Application
;
import
android.app.Application
;
import
android.content.Context
;
import
android.content.Context
;
...
@@ -20,8 +21,10 @@ import android.view.WindowManager;
...
@@ -20,8 +21,10 @@ import android.view.WindowManager;
import
com.alibaba.android.arouter.launcher.ARouter
;
import
com.alibaba.android.arouter.launcher.ARouter
;
import
com.yanzhenjie.permission.AndPermission
;
import
com.tbruyelle.rxpermissions2.RxPermissions
;
import
org.greenrobot.eventbus.EventBus
;
import
org.greenrobot.eventbus.EventBus
;
import
java.util.List
;
import
java.util.List
;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
...
@@ -30,19 +33,13 @@ import cn.dankal.basiclib.DankalApplication;
...
@@ -30,19 +33,13 @@ import cn.dankal.basiclib.DankalApplication;
import
cn.dankal.basiclib.R
;
import
cn.dankal.basiclib.R
;
import
cn.dankal.basiclib.base.BaseView
;
import
cn.dankal.basiclib.base.BaseView
;
import
cn.dankal.basiclib.base.callback.DKCallBackBoolean
;
import
cn.dankal.basiclib.base.callback.DKCallBackBoolean
;
import
cn.dankal.basiclib.constant.Constant
;
import
cn.dankal.basiclib.constant.ConstantsHomeType
;
import
cn.dankal.basiclib.constant.ConstantsHomeType
;
import
cn.dankal.basiclib.eventbus.UpdateLanguageEvent
;
import
cn.dankal.basiclib.hook.ViewDoubleClickUtil
;
import
cn.dankal.basiclib.util.ActivityManager
;
import
cn.dankal.basiclib.util.ActivityManager
;
import
cn.dankal.basiclib.util.ActivityUtils
;
import
cn.dankal.basiclib.util.ActivityUtils
;
import
cn.dankal.basiclib.util.ButtonUtil
;
import
cn.dankal.basiclib.util.DKHandler
;
import
cn.dankal.basiclib.util.DKHandler
;
import
cn.dankal.basiclib.util.LanguageUtil
;
import
cn.dankal.basiclib.util.SPUtils
;
import
cn.dankal.basiclib.util.SPUtils
;
import
cn.dankal.basiclib.util.TitleBarUtils
;
import
cn.dankal.basiclib.util.TitleBarUtils
;
import
cn.dankal.basiclib.util.ToastUtils
;
import
cn.dankal.basiclib.util.ToastUtils
;
import
cn.dankal.basiclib.util.language.LocalManageUtil
;
import
cn.dankal.basiclib.util.language.MultiLanguage
;
import
cn.dankal.basiclib.util.language.MultiLanguage
;
import
cn.dankal.basiclib.widget.CommonDialog
;
import
cn.dankal.basiclib.widget.CommonDialog
;
import
cn.dankal.basiclib.widget.TipDialog
;
import
cn.dankal.basiclib.widget.TipDialog
;
...
@@ -51,6 +48,7 @@ import cn.dankal.basiclib.widget.titlebar.ITitleBar;
...
@@ -51,6 +48,7 @@ import cn.dankal.basiclib.widget.titlebar.ITitleBar;
import
cn.dankal.basiclib.widget.titlebar.SingleTextTitle
;
import
cn.dankal.basiclib.widget.titlebar.SingleTextTitle
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.functions.Consumer
;
/**
/**
* @author Dankal Android Developer
* @author Dankal Android Developer
...
@@ -63,6 +61,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
...
@@ -63,6 +61,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
private
CompositeDisposable
mDisposables
=
new
CompositeDisposable
();
private
CompositeDisposable
mDisposables
=
new
CompositeDisposable
();
protected
CommonDialog
commonDialog
;
protected
CommonDialog
commonDialog
;
private
LocationManager
lm
=
null
;
private
LocationManager
lm
=
null
;
private
RxPermissions
mRxPermissions
;
@Override
@Override
protected
void
attachBaseContext
(
Context
newBase
)
{
protected
void
attachBaseContext
(
Context
newBase
)
{
...
@@ -90,6 +89,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
...
@@ -90,6 +89,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
super
.
onCreate
(
savedInstanceState
);
ARouter
.
getInstance
().
inject
(
this
);
ARouter
.
getInstance
().
inject
(
this
);
mRxPermissions
=
new
RxPermissions
(
this
);
/* if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT) {
/* if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT) {
//透明状态栏
//透明状态栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
...
@@ -183,15 +183,6 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
...
@@ -183,15 +183,6 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
QMUIStatusBarHelper
.
setStatusBarLightMode
(
this
);
QMUIStatusBarHelper
.
setStatusBarLightMode
(
this
);
}
}
public
void
setTranslucent
(
Activity
context
,
View
view
)
{
if
(
view
!=
null
)
{
// QMUIStatusBarHelper.translucent(this);
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
KITKAT_WATCH
)
{
view
.
setPadding
(
0
,
QMUIStatusBarHelper
.
getStatusbarHeight
(
context
),
0
,
0
);
}
}
}
/**
/**
* setContentView(LayoutResId)
* setContentView(LayoutResId)
*
*
...
@@ -418,38 +409,47 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
...
@@ -418,38 +409,47 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
commonDialog
.
show
();
commonDialog
.
show
();
}
}
@SuppressLint
(
"CheckResult"
)
public
void
requestPermission
(
String
permission
,
PermissionState
permissionState
)
{
public
void
requestPermission
(
String
permission
,
PermissionState
permissionState
)
{
AndPermission
.
with
(
this
)
if
(
mRxPermissions
!=
null
)
{
.
runtime
()
mRxPermissions
.
request
(
permission
).
subscribe
(
new
Consumer
<
Boolean
>()
{
.
permission
(
permission
)
@Override
.
onDenied
(
permissions
->
{
public
void
accept
(
Boolean
aBoolean
)
throws
Exception
{
CommonDialog
.
Builder
builder
=
new
CommonDialog
.
Builder
(
this
);
if
(
aBoolean
)
{
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
));
if
(
permissionState
!=
null
)
{
permissionState
.
onPermissionState
();
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
getResources
().
getColor
(
R
.
color
.
color14
),
type
->
{
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
));
commonDialog
.
dismiss
();
});
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
getResources
().
getColor
(
R
.
color
.
colorPrimary
),
new
DKCallBackBoolean
()
{
@Override
public
void
action
(
int
type
)
{
toSelfSetting
();
commonDialog
.
dismiss
();
}
}
});
}
else
{
commonDialog
=
builder
.
create
();
CommonDialog
.
Builder
builder
=
new
CommonDialog
.
Builder
(
BaseActivity
.
this
);
commonDialog
.
show
();
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
));
}).
onGranted
(
data
->
{
//权限被允许
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
getResources
().
getColor
(
R
.
color
.
color14
),
type
->
{
if
(
permissionState
!=
null
)
{
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
));
permissionState
.
onPermissionState
();
commonDialog
.
dismiss
();
}
});
}).
start
();
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
getResources
().
getColor
(
R
.
color
.
colorPrimary
),
new
DKCallBackBoolean
()
{
@Override
public
void
action
(
int
type
)
{
toSelfSetting
();
commonDialog
.
dismiss
();
}
});
commonDialog
=
builder
.
create
();
commonDialog
.
show
();
}
}
},
new
Consumer
<
Throwable
>()
{
@Override
public
void
accept
(
Throwable
throwable
)
throws
Exception
{
}
});
}
}
}
public
interface
PermissionState
{
public
interface
PermissionState
{
public
void
onPermissionState
();
void
onPermissionState
();
}
}
/**
/**
...
...
baselib/src/main/java/cn/dankal/basiclib/base/fragment/BaseFragment.java
View file @
d3e7306b
package
cn
.
dankal
.
basiclib
.
base
.
fragment
;
package
cn
.
dankal
.
basiclib
.
base
.
fragment
;
import
android.annotation.SuppressLint
;
import
android.content.Intent
;
import
android.content.Intent
;
import
android.net.Uri
;
import
android.net.Uri
;
import
android.os.Build
;
import
android.os.Build
;
...
@@ -14,8 +15,7 @@ import android.view.View;
...
@@ -14,8 +15,7 @@ import android.view.View;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.view.WindowManager
;
import
android.view.WindowManager
;
import
com.tbruyelle.rxpermissions2.RxPermissions
;
import
com.yanzhenjie.permission.AndPermission
;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
import
butterknife.Unbinder
;
import
butterknife.Unbinder
;
...
@@ -34,6 +34,7 @@ import cn.dankal.basiclib.widget.titlebar.ITitleBar;
...
@@ -34,6 +34,7 @@ import cn.dankal.basiclib.widget.titlebar.ITitleBar;
import
cn.dankal.basiclib.widget.titlebar.SingleTextTitle
;
import
cn.dankal.basiclib.widget.titlebar.SingleTextTitle
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.functions.Consumer
;
/**
/**
* description: Fragment 基类
* description: Fragment 基类
...
@@ -50,6 +51,7 @@ public abstract class BaseFragment extends Fragment implements BaseView {
...
@@ -50,6 +51,7 @@ public abstract class BaseFragment extends Fragment implements BaseView {
protected
CommonDialog
commonDialog
;
protected
CommonDialog
commonDialog
;
private
CompositeDisposable
mDisposables
=
new
CompositeDisposable
();
private
CompositeDisposable
mDisposables
=
new
CompositeDisposable
();
private
RxPermissions
mRxPermissions
;
protected
boolean
isVisibleToUser
;
protected
boolean
isVisibleToUser
;
@Nullable
@Nullable
...
@@ -63,6 +65,7 @@ public abstract class BaseFragment extends Fragment implements BaseView {
...
@@ -63,6 +65,7 @@ public abstract class BaseFragment extends Fragment implements BaseView {
@Override
@Override
public
void
onViewCreated
(
@NonNull
View
view
,
@Nullable
Bundle
savedInstanceState
)
{
public
void
onViewCreated
(
@NonNull
View
view
,
@Nullable
Bundle
savedInstanceState
)
{
mRxPermissions
=
new
RxPermissions
(
getActivity
());
initComponents
();
initComponents
();
obtainData
();
obtainData
();
}
}
...
@@ -248,39 +251,47 @@ public abstract class BaseFragment extends Fragment implements BaseView {
...
@@ -248,39 +251,47 @@ public abstract class BaseFragment extends Fragment implements BaseView {
commonDialog
.
show
();
commonDialog
.
show
();
}
}
public
void
requestPermission
(
String
permission
,
BaseActivity
.
PermissionState
permissionState
)
{
@SuppressLint
(
"CheckResult"
)
AndPermission
.
with
(
this
)
public
void
requestPermission
(
String
permission
,
PermissionState
permissionState
)
{
.
runtime
()
if
(
mRxPermissions
!=
null
)
{
.
permission
(
permission
)
mRxPermissions
.
request
(
permission
).
subscribe
(
new
Consumer
<
Boolean
>()
{
.
onDenied
(
permissions
->
{
@Override
CommonDialog
.
Builder
builder
=
new
CommonDialog
.
Builder
(
getActivity
());
public
void
accept
(
Boolean
aBoolean
)
{
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
));
if
(
aBoolean
)
{
if
(
permissionState
!=
null
)
{
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
getResources
().
getColor
(
R
.
color
.
color14
),
type
->
{
permissionState
.
onPermissionState
();
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
));
}
commonDialog
.
dismiss
();
}
else
{
});
CommonDialog
.
Builder
builder
=
new
CommonDialog
.
Builder
(
getActivity
());
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
));
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
getResources
().
getColor
(
R
.
color
.
colorPrimary
),
new
DKCallBackBoolean
()
{
@Override
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
getResources
().
getColor
(
R
.
color
.
color14
),
type
->
{
public
void
action
(
int
type
)
{
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
));
toSelfSetting
();
commonDialog
.
dismiss
();
commonDialog
.
dismiss
();
}
});
});
commonDialog
=
builder
.
create
();
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
getResources
().
getColor
(
R
.
color
.
colorPrimary
),
new
DKCallBackBoolean
()
{
commonDialog
.
show
();
@Override
}).
onGranted
(
data
->
{
public
void
action
(
int
type
)
{
//权限被允许
toSelfSetting
();
if
(
permissionState
!=
null
)
{
commonDialog
.
dismiss
();
permissionState
.
onPermissionState
();
}
}
});
}).
start
();
commonDialog
=
builder
.
create
();
commonDialog
.
show
();
}
}
},
new
Consumer
<
Throwable
>()
{
@Override
public
void
accept
(
Throwable
throwable
)
throws
Exception
{
}
});
}
}
}
public
interface
PermissionState
{
public
interface
PermissionState
{
public
void
onPermissionState
();
void
onPermissionState
();
}
}
/**
/**
...
...
module-user/src/main/java/cn/dankal/user/login/LoginActivity.kt
View file @
d3e7306b
package
cn.dankal.user.login
package
cn.dankal.user.login
import
android.os.Handler
import
android.os.Handler
import
android.support.v4.content.ContextCompat
import
android.text.Editable
import
android.text.Editable
import
android.text.TextUtils
import
android.text.TextUtils
import
android.text.TextWatcher
import
android.text.TextWatcher
...
@@ -27,12 +28,13 @@ import kotlinx.android.synthetic.main.activity_login.*
...
@@ -27,12 +28,13 @@ import kotlinx.android.synthetic.main.activity_login.*
import
com.google.android.gms.tasks.OnCompleteListener
import
com.google.android.gms.tasks.OnCompleteListener
import
com.google.firebase.iid.FirebaseInstanceId
import
com.google.firebase.iid.FirebaseInstanceId
import
com.mhq.smartorder.wxapi.WXEntryActivity
import
com.mhq.smartorder.wxapi.WXEntryActivity
import
com.tbruyelle.rxpermissions2.RxPermissions
import
com.tencent.mm.opensdk.modelmsg.SendAuth
import
com.tencent.mm.opensdk.modelmsg.SendAuth
import
com.tencent.mm.opensdk.openapi.IWXAPI
import
com.tencent.mm.opensdk.openapi.IWXAPI
import
com.tencent.mm.opensdk.openapi.WXAPIFactory
import
com.tencent.mm.opensdk.openapi.WXAPIFactory
import
com.yanzhenjie.permission.AndPermission
import
com.yanzhenjie.permission.Permission
import
com.yanzhenjie.permission.Permission
import
io.reactivex.disposables.Disposable
import
io.reactivex.disposables.Disposable
import
io.reactivex.functions.Consumer
import
okhttp3.ResponseBody
import
okhttp3.ResponseBody
...
@@ -55,9 +57,13 @@ class LoginActivity : BaseActivity() {
...
@@ -55,9 +57,13 @@ class LoginActivity : BaseActivity() {
return
R
.
layout
.
activity_login
return
R
.
layout
.
activity_login
}
}
private
var
mRxPermissions
:
RxPermissions
?
=
null
override
fun
initComponents
()
{
override
fun
initComponents
()
{
addSingleTitleBar
(
getString
(
R
.
string
.
login
))
addSingleTitleBar
(
getString
(
R
.
string
.
login
))
mRxPermissions
=
RxPermissions
(
this
)
getLocationPermission
()
getLocationPermission
()
iwxapi
=
WXAPIFactory
.
createWXAPI
(
this
,
WXEntryActivity
.
WX_APP_ID
,
true
)
iwxapi
=
WXAPIFactory
.
createWXAPI
(
this
,
WXEntryActivity
.
WX_APP_ID
,
true
)
...
@@ -94,10 +100,10 @@ class LoginActivity : BaseActivity() {
...
@@ -94,10 +100,10 @@ class LoginActivity : BaseActivity() {
}
}
fl_weChat_login
.
setOnClickListener
{
fl_weChat_login
.
setOnClickListener
{
/* if (!UIUtils.isWeixinAvilible(this)) {
/* if (!UIUtils.isWeixinAvilible(this)) {
ToastUtils.showShort(getString(R.string.please_instal_wechat))
ToastUtils.showShort(getString(R.string.please_instal_wechat))
return@setOnClickListener
return@setOnClickListener
}*/
}*/
setWeChatLogin
()
setWeChatLogin
()
}
}
...
@@ -105,29 +111,32 @@ class LoginActivity : BaseActivity() {
...
@@ -105,29 +111,32 @@ class LoginActivity : BaseActivity() {
}
}
private
fun
getLocationPermission
()
{
private
fun
getLocationPermission
()
{
AndPermission
.
with
(
this
)
mRxPermissions
?.
let
{
.
runtime
()
it
.
request
(
Permission
.
ACCESS_COARSE_LOCATION
,
Permission
.
READ_PHONE_STATE
).
subscribe
({
.
permission
(
Permission
.
ACCESS_COARSE_LOCATION
,
Permission
.
READ_PHONE_STATE
)
if
(
it
)
{
.
onDenied
{
//权限被允许
initLocation
()
}
else
{
val
builder
=
CommonDialog
.
Builder
(
this
)
val
builder
=
CommonDialog
.
Builder
(
this
)
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
))
builder
.
setTitle
(
getString
(
R
.
string
.
prohibiting_access_will_affect_your_normal_use
))
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
builder
.
setNegativeButton
(
getString
(
R
.
string
.
refuse
),
resources
.
getColor
(
R
.
color
.
color14
))
{
ContextCompat
.
getColor
(
this
,
R
.
color
.
color14
))
{
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
))
ToastUtils
.
showShort
(
getString
(
R
.
string
.
failed_to_obtain_permission
))
commonDialog
.
dismiss
()
commonDialog
.
dismiss
()
}
}
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
builder
.
setPositiveButton
(
getString
(
R
.
string
.
agree_to_open
),
resources
.
getColor
(
R
.
color
.
colorPrimary
))
{
ContextCompat
.
getColor
(
this
,
R
.
color
.
colorPrimary
))
{
toSelfSetting
()
toSelfSetting
()
commonDialog
.
dismiss
()
commonDialog
.
dismiss
()
}
}
commonDialog
=
builder
.
create
()
commonDialog
=
builder
.
create
()
commonDialog
.
show
()
commonDialog
.
show
()
}.
onGranted
{
}
//权限被允许
},
{
initLocation
()
}.
start
()
})
}
}
}
/**
/**
...
...
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