Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
HBHAndroid
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
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
杨秀秀
HBHAndroid
Commits
87cb65f6
Commit
87cb65f6
authored
Apr 12, 2024
by
杨秀秀
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
基础搭建
功能开发 1.1.0
parent
ea1d9555
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
153 additions
and
88 deletions
+153
-88
workspace.xml
.idea/workspace.xml
+9
-31
build.gradle
app/build.gradle
+1
-1
build.gradle
consumer/build.gradle
+2
-2
build.gradle
hbhbcompany/build.gradle
+2
-2
BaseActivity.java
.../src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
+70
-28
BaseFragment.java
.../src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java
+69
-24
No files found.
.idea/workspace.xml
View file @
87cb65f6
...
@@ -18,41 +18,19 @@
...
@@ -18,41 +18,19 @@
<change
beforePath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/outputFiles.bin"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/outputFiles.bin"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/outputFiles.bin"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/buildOutputCleanup/outputFiles.bin"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.gradle/file-system.probe"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/file-system.probe"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.gradle/file-system.probe"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.gradle/file-system.probe"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_6_11_09__Changes_.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_6_11_09__Changes_.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_6_19_52__Changes_.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_6_19_52__Changes_.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_16_30__Changes_.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_16_30__Changes_.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_17_21__Changes_.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_17_21__Changes_.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_9_08__Changes_.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2023_7_7_9_08__Changes_.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/workspace.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/workspace.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/.idea/workspace.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/.idea/workspace.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/addproduct/AddProductViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/addproduct/AddProductViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/appeal/AppealEditViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/appeal/AppealEditViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/appeal/AppealViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/appeal/AppealViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/login/LoginActivity.kt"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/login/LoginActivity.kt"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantenter/AddBrankViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantenter/AddBrankViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantenter/MerchantEnterViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantenter/MerchantEnterViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantinfo/MerchantInfoViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/java/com/xx/merchanthbh/ui/merchantinfo/MerchantInfoViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/app/src/main/res/layout/activity_material_info.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/app/src/main/res/layout/activity_material_info.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/src/main/java/com/xx/hbhconsumer/ui/mine/MineViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/src/main/java/com/xx/hbhconsumer/ui/mine/MineViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/src/main/java/com/xx/hbhconsumer/ui/recruit/RecruitDetailActivity.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/src/main/java/com/xx/hbhconsumer/ui/recruit/RecruitDetailActivity.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/src/main/res/layout/activity_credits_exchange.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/src/main/res/layout/activity_credits_exchange.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/consumer/src/main/res/values/strings.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/consumer/src/main/res/values/strings.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/build.gradle"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/build.gradle"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealEditViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealEditViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealHandleViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealHandleViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/appeal/AppealViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/qualityauditinfo/QualityAuditInfoViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/qualityauditinfo/QualityAuditInfoViewModel.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseViewModel.java"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseViewModel.java"
afterDir=
"false"
/>
</list>
</list>
<option
name=
"SHOW_DIALOG"
value=
"false"
/>
<option
name=
"SHOW_DIALOG"
value=
"false"
/>
<option
name=
"HIGHLIGHT_CONFLICTS"
value=
"true"
/>
<option
name=
"HIGHLIGHT_CONFLICTS"
value=
"true"
/>
<option
name=
"HIGHLIGHT_NON_ACTIVE_CHANGELIST"
value=
"false"
/>
<option
name=
"HIGHLIGHT_NON_ACTIVE_CHANGELIST"
value=
"false"
/>
<option
name=
"LAST_RESOLUTION"
value=
"IGNORE"
/>
<option
name=
"LAST_RESOLUTION"
value=
"IGNORE"
/>
</component>
</component>
<component
name=
"ExecutionTargetManager"
SELECTED_TARGET=
"device_and_snapshot_combo_box_target[
C:\Users\Administrator\.android\avd\Pixel_2_API_30.avd
]"
/>
<component
name=
"ExecutionTargetManager"
SELECTED_TARGET=
"device_and_snapshot_combo_box_target[
34612fa7
]"
/>
<component
name=
"ExternalProjectsData"
>
<component
name=
"ExternalProjectsData"
>
<projectState
path=
"$PROJECT_DIR$"
>
<projectState
path=
"$PROJECT_DIR$"
>
<ProjectState
/>
<ProjectState
/>
...
@@ -110,7 +88,7 @@
...
@@ -110,7 +88,7 @@
</option>
</option>
</component>
</component>
<component
name=
"GenerateSignedApkSettings"
>
<component
name=
"GenerateSignedApkSettings"
>
<option
name=
"KEY_STORE_PATH"
value=
"D:\work\key\
merchant
_hbh.jks"
/>
<option
name=
"KEY_STORE_PATH"
value=
"D:\work\key\
consumer
_hbh.jks"
/>
<option
name=
"KEY_ALIAS"
value=
"zoe"
/>
<option
name=
"KEY_ALIAS"
value=
"zoe"
/>
<option
name=
"REMEMBER_PASSWORDS"
value=
"true"
/>
<option
name=
"REMEMBER_PASSWORDS"
value=
"true"
/>
<option
name=
"BUILD_TARGET_KEY"
value=
"apk"
/>
<option
name=
"BUILD_TARGET_KEY"
value=
"apk"
/>
...
@@ -139,7 +117,7 @@
...
@@ -139,7 +117,7 @@
</component>
</component>
<component
name=
"PropertiesComponent"
>
<![CDATA[{
<component
name=
"PropertiesComponent"
>
<![CDATA[{
"keyToString": {
"keyToString": {
"ApkExportedModule": "HBHFurniture.
app
",
"ApkExportedModule": "HBHFurniture.
consumer
",
"DEBUGGABLE_DEVICE": "oneplus-le2120-34612fa7",
"DEBUGGABLE_DEVICE": "oneplus-le2120-34612fa7",
"DEBUGGABLE_PROCESS": "com.xx.hbhconsumer",
"DEBUGGABLE_PROCESS": "com.xx.hbhconsumer",
"DEBUGGER_ID": "Auto",
"DEBUGGER_ID": "Auto",
...
@@ -173,7 +151,7 @@
...
@@ -173,7 +151,7 @@
"com.google.services.firebase.aqiPopupShown": "true",
"com.google.services.firebase.aqiPopupShown": "true",
"dart.analysis.tool.window.visible": "false",
"dart.analysis.tool.window.visible": "false",
"last_directory_selection": "D:/androidProJect/HBHFurniture/hbhbcompany/src/main/res/mipmap-xhdpi",
"last_directory_selection": "D:/androidProJect/HBHFurniture/hbhbcompany/src/main/res/mipmap-xhdpi",
"last_opened_file_path": "D:/androidProJect/Car
Control_company-mas
ter",
"last_opened_file_path": "D:/androidProJect/Car
En
ter",
"project.structure.last.edited": "Modules",
"project.structure.last.edited": "Modules",
"project.structure.proportion": "0.17",
"project.structure.proportion": "0.17",
"project.structure.side.proportion": "0.2",
"project.structure.side.proportion": "0.2",
...
@@ -242,7 +220,7 @@
...
@@ -242,7 +220,7 @@
<recent
name=
"com.xx.hbhbcompany.utils"
/>
<recent
name=
"com.xx.hbhbcompany.utils"
/>
</key>
</key>
</component>
</component>
<component
name=
"RunManager"
selected=
"Android App.
app
"
>
<component
name=
"RunManager"
selected=
"Android App.
consumer
"
>
<configuration
name=
"app"
type=
"AndroidRunConfigurationType"
factoryName=
"Android App"
>
<configuration
name=
"app"
type=
"AndroidRunConfigurationType"
factoryName=
"Android App"
>
<module
name=
"HBHFurniture.app.main"
/>
<module
name=
"HBHFurniture.app.main"
/>
<option
name=
"DEPLOY"
value=
"true"
/>
<option
name=
"DEPLOY"
value=
"true"
/>
...
@@ -978,7 +956,7 @@
...
@@ -978,7 +956,7 @@
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseViewModel.java
</url>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseViewModel.java
</url>
<line>
21
4
</line>
<line>
21
7
</line>
<option
name=
"timeStamp"
value=
"551"
/>
<option
name=
"timeStamp"
value=
"551"
/>
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
...
@@ -993,17 +971,17 @@
...
@@ -993,17 +971,17 @@
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<line>
359
</line>
<line>
411
</line>
<option
name=
"timeStamp"
value=
"556"
/>
<option
name=
"timeStamp"
value=
"556"
/>
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<line>
362
</line>
<line>
414
</line>
<option
name=
"timeStamp"
value=
"557"
/>
<option
name=
"timeStamp"
value=
"557"
/>
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<line-breakpoint
enabled=
"true"
type=
"java-line"
>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<url>
file://$PROJECT_DIR$/mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
</url>
<line>
364
</line>
<line>
416
</line>
<option
name=
"timeStamp"
value=
"558"
/>
<option
name=
"timeStamp"
value=
"558"
/>
</line-breakpoint>
</line-breakpoint>
<line-breakpoint
enabled=
"true"
type=
"kotlin-line"
>
<line-breakpoint
enabled=
"true"
type=
"kotlin-line"
>
...
...
app/build.gradle
View file @
87cb65f6
...
@@ -38,7 +38,7 @@ android {
...
@@ -38,7 +38,7 @@ android {
minSdk
23
minSdk
23
targetSdk
31
targetSdk
31
versionCode
2
versionCode
2
versionName
"1.
0.1
"
versionName
"1.
1.0
"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
signingConfig
signingConfigs
.
reseale
signingConfig
signingConfigs
.
reseale
...
...
consumer/build.gradle
View file @
87cb65f6
...
@@ -34,8 +34,8 @@ android {
...
@@ -34,8 +34,8 @@ android {
applicationId
"com.xx.hbhconsumer"
applicationId
"com.xx.hbhconsumer"
minSdk
23
minSdk
23
targetSdk
31
targetSdk
31
versionCode
1
versionCode
2
versionName
"1.
0
.0"
versionName
"1.
1
.0"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
signingConfig
signingConfigs
.
release
signingConfig
signingConfigs
.
release
}
}
...
...
hbhbcompany/build.gradle
View file @
87cb65f6
...
@@ -37,8 +37,8 @@ android {
...
@@ -37,8 +37,8 @@ android {
applicationId
"com.xx.hbhbcompany"
applicationId
"com.xx.hbhbcompany"
minSdk
24
minSdk
24
targetSdk
31
targetSdk
31
versionCode
1
versionCode
2
versionName
"1.
0.1
"
versionName
"1.
1.0
"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"
vectorDrawables
{
vectorDrawables
{
...
...
mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseActivity.java
View file @
87cb65f6
...
@@ -208,45 +208,87 @@ public abstract class BaseActivity<V extends ViewDataBinding, VM extends BaseVie
...
@@ -208,45 +208,87 @@ public abstract class BaseActivity<V extends ViewDataBinding, VM extends BaseVie
if
(
!
rp
.
isGranted
(
Manifest
.
permission
.
CAMERA
)
||
!
rp
.
isGranted
(
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
))
if
(
!
rp
.
isGranted
(
Manifest
.
permission
.
CAMERA
)
||
!
rp
.
isGranted
(
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
))
{
{
ToastUtils
.
showLong
(
o
.
get
(
"pMsg"
).
toString
());
showCommTextDialog
(
new
RefuseDialogBean
(
o
.
get
(
"pMsg"
).
toString
()
+
",是否同意"
,
"同意"
,
"拒绝"
),
new
CommTextDialog
.
onAcceptCallBack
()
{
@Override
public
void
acceptBack
()
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
}
@Override
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
if
(
aBoolean
)
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
int
maxCount
=
(
int
)
o
.
get
(
"maxCount"
);
if
(
o
.
get
(
"maxCount"
)
==
null
)
{
maxCount
=
1
;
}
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
maxCount
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
@Override
public
void
onError
(
@NonNull
Throwable
e
)
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
@Override
public
void
onComplete
()
{
}
});
}
}
@Override
public
void
refuseBack
()
{
}
});
}
else
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
}
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
}
@Override
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
@Override
if
(
aBoolean
)
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
int
maxCount
=
(
int
)
o
.
get
(
"maxCount"
);
if
(
o
.
get
(
"maxCount"
)
==
null
)
{
maxCount
=
1
;
}
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
maxCount
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
if
(
aBoolean
)
@Override
{
public
void
onError
(
@NonNull
Throwable
e
)
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
int
maxCount
=
(
int
)
o
.
get
(
"maxCount"
);
if
(
o
.
get
(
"maxCount"
)
==
null
)
{
maxCount
=
1
;
}
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
maxCount
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
@Override
}
public
void
onError
(
@NonNull
Throwable
e
)
{
}
@Override
public
void
onComplete
()
{
}
});
}
@Override
public
void
onComplete
()
{
}
});
}
}
});
});
...
...
mvvmhabit/src/main/java/me/goldze/mvvmhabit/base/BaseFragment.java
View file @
87cb65f6
...
@@ -204,42 +204,87 @@ public abstract class BaseFragment<V extends ViewDataBinding, VM extends BaseVie
...
@@ -204,42 +204,87 @@ public abstract class BaseFragment<V extends ViewDataBinding, VM extends BaseVie
if
(
!
rp
.
isGranted
(
Manifest
.
permission
.
CAMERA
)
||
!
rp
.
isGranted
(
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
))
if
(
!
rp
.
isGranted
(
Manifest
.
permission
.
CAMERA
)
||
!
rp
.
isGranted
(
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
))
{
{
ToastUtils
.
showShort
(
o
.
get
(
"pMsg"
).
toString
());
showCommTextDialog
(
new
RefuseDialogBean
(
o
.
get
(
"pMsg"
).
toString
()
+
",是否同意"
,
"同意"
,
"拒绝"
),
new
CommTextDialog
.
onAcceptCallBack
()
{
@Override
public
void
acceptBack
()
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
}
@Override
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
if
(
aBoolean
)
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
int
maxCount
=
(
int
)
o
.
get
(
"maxCount"
);
if
(
o
.
get
(
"maxCount"
)
==
null
)
{
maxCount
=
1
;
}
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
@Override
public
void
onError
(
@NonNull
Throwable
e
)
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
@Override
public
void
onComplete
()
{
}
});
}
}
@Override
public
void
refuseBack
()
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
}
@Override
});
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
}
else
{
rp
.
request
(
Manifest
.
permission
.
CAMERA
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
).
subscribe
(
new
io
.
reactivex
.
rxjava3
.
core
.
Observer
<
Boolean
>()
{
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
}
}
@Override
@Override
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
public
void
onNext
(
@NonNull
Boolean
aBoolean
)
{
if
(
aBoolean
)
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
int
maxCount
=
(
int
)
o
.
get
(
"maxCount"
);
if
(
o
.
get
(
"maxCount"
)
==
null
)
{
maxCount
=
1
;
}
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
if
(
aBoolean
)
@Override
{
public
void
onError
(
@NonNull
Throwable
e
)
{
boolean
hasCamera
=
(
boolean
)
o
.
get
(
"hasCamera"
);
SelectCallback
callback
=
(
SelectCallback
)
o
.
get
(
"callBack"
);
startPhoto
(
hasCamera
,
callback
);
}
else
{
ToastUtils
.
showShort
(
"请开启拍照,和文件读取权限,否则无法正常使用完整功能"
);
}
}
}
@Override
@Override
public
void
onError
(
@NonNull
Throwable
e
)
{
public
void
onComplete
(
)
{
}
}
});
}
@Override
public
void
onComplete
()
{
}
});
}
}
});
});
...
...
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