Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
android_street
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
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
android_street
Commits
ebbbce24
Commit
ebbbce24
authored
Sep 22, 2021
by
fengruiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改百度SDK初始化问题(为初始化)
parent
12395cff
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
113 additions
and
67 deletions
+113
-67
output-metadata.json
app/freeworld/release/output-metadata.json
+18
-0
MainApi.kt
app/src/main/java/com/mints/street/api/MainApi.kt
+7
-0
VivoShowBean.kt
app/src/main/java/com/mints/street/bean/VivoShowBean.kt
+8
-0
ApiModel.kt
app/src/main/java/com/mints/street/model/ApiModel.kt
+9
-0
SplashActivity.kt
app/src/main/java/com/mints/street/splash/SplashActivity.kt
+45
-67
SplashViewModel.kt
app/src/main/java/com/mints/street/splash/SplashViewModel.kt
+26
-0
No files found.
app/freeworld/release/output-metadata.json
0 → 100644
View file @
ebbbce24
{
"version"
:
2
,
"artifactType"
:
{
"type"
:
"APK"
,
"kind"
:
"Directory"
},
"applicationId"
:
"com.mints.freeworld"
,
"variantName"
:
"processFreeworldReleaseResources"
,
"elements"
:
[
{
"type"
:
"SINGLE"
,
"filters"
:
[],
"versionCode"
:
1
,
"versionName"
:
"1.1.0"
,
"outputFile"
:
"freeworld_1.1.0.apk"
}
]
}
\ No newline at end of file
app/src/main/java/com/mints/street/api/MainApi.kt
View file @
ebbbce24
...
@@ -156,4 +156,11 @@ interface MainApi {
...
@@ -156,4 +156,11 @@ interface MainApi {
*/
*/
@POST
(
"na/getMapChargeConfig"
)
@POST
(
"na/getMapChargeConfig"
)
fun
getMapChargeConfig
():
Observable
<
Response
<
BaseResponse
<
MapStyleSort
>>>
fun
getMapChargeConfig
():
Observable
<
Response
<
BaseResponse
<
MapStyleSort
>>>
/**
* 是否展示开屏视频
* 只针对vivo
*/
@POST
(
"na/showAds"
)
fun
vivoShow
(
@Body
vo
:
@JvmSuppressWildcards
Map
<
String
,
Any
>):
Observable
<
Response
<
BaseResponse
<
VivoShowBean
>>>
}
}
\ No newline at end of file
app/src/main/java/com/mints/street/bean/VivoShowBean.kt
0 → 100644
View file @
ebbbce24
package
com.mints.street.bean
/**
* Created by 冯瑞雨 on 2021/9/17.
*/
class
VivoShowBean
{
var
showAd
:
Boolean
?
=
null
}
\ No newline at end of file
app/src/main/java/com/mints/street/model/ApiModel.kt
View file @
ebbbce24
...
@@ -168,5 +168,14 @@ object ApiModel {
...
@@ -168,5 +168,14 @@ object ApiModel {
return
HttpManager
.
getInstance
().
execute
(
lifecycleProvider
,
return
HttpManager
.
getInstance
().
execute
(
lifecycleProvider
,
MainApi
.
newInstance
().
getMapChargeConfig
())
MainApi
.
newInstance
().
getMapChargeConfig
())
}
}
/**
* 是否展示开屏视频
* 只针对vivo
*/
fun
vivoShow
(
lifecycleProvider
:
LifecycleProvider
<
Any
>?,
map
:
HashMap
<
String
,
Any
>)
:
Observable
<
Response
<
BaseResponse
<
VivoShowBean
>>>{
return
HttpManager
.
getInstance
().
execute
(
lifecycleProvider
,
MainApi
.
newInstance
().
vivoShow
(
map
))
}
}
}
\ No newline at end of file
app/src/main/java/com/mints/street/splash/SplashActivity.kt
View file @
ebbbce24
package
com.mints.street.splash
package
com.mints.street.splash
import
android.os.Bundle
import
android.os.Bundle
import
android.
view.View
import
android.
os.Handler
import
android.widget.FrameLayout
import
android.widget.FrameLayout
import
com.blankj.utilcode.util.ToastUtils
import
androidx.lifecycle.Observer
import
com.bytedance.msdk.adapter.pangle.PangleNetworkRequestInfo
import
com.bytedance.msdk.adapter.pangle.PangleNetworkRequestInfo
import
com.bytedance.msdk.api.AdError
import
com.bytedance.msdk.api.AdError
import
com.bytedance.msdk.api.AdSlot
import
com.bytedance.msdk.api.AdSlot
...
@@ -12,6 +12,7 @@ import com.bytedance.msdk.api.splash.TTSplashAd
...
@@ -12,6 +12,7 @@ import com.bytedance.msdk.api.splash.TTSplashAd
import
com.bytedance.msdk.api.splash.TTSplashAdListener
import
com.bytedance.msdk.api.splash.TTSplashAdListener
import
com.bytedance.msdk.api.splash.TTSplashAdLoadCallback
import
com.bytedance.msdk.api.splash.TTSplashAdLoadCallback
import
com.fry.base.base.BaseActivity
import
com.fry.base.base.BaseActivity
import
com.mints.street.AppApplication
import
com.mints.street.BR
import
com.mints.street.BR
import
com.mints.street.R
import
com.mints.street.R
import
com.mints.street.ad.CsjGroMoreManager
import
com.mints.street.ad.CsjGroMoreManager
...
@@ -20,11 +21,9 @@ import com.mints.street.common.DeviceInfo
...
@@ -20,11 +21,9 @@ import com.mints.street.common.DeviceInfo
import
com.mints.street.databinding.ActivitySplashBinding
import
com.mints.street.databinding.ActivitySplashBinding
import
com.mints.street.main.MainActivity
import
com.mints.street.main.MainActivity
import
com.mints.street.main.my.PermissionsActivity
import
com.mints.street.main.my.PermissionsActivity
import
com.mints.street.webview.MintsWebViewActivity
import
com.mints.street.utils.CommonUtils
import
com.mints.street.widget.dialog.DialogListener
import
com.mints.street.widget.dialog.PowerDialog
import
com.mints.street.widget.dialog.PowerDialog
import
com.tencent.mmkv.MMKV
import
com.tencent.mmkv.MMKV
import
me.goldze.mvvmhabit.utils.systembar.StatusBarUtil
/**
/**
* 描述:gromore开屏页
* 描述:gromore开屏页
...
@@ -48,10 +47,23 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
...
@@ -48,10 +47,23 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
override
fun
initVariableId
()
=
BR
.
viewModel
override
fun
initVariableId
()
=
BR
.
viewModel
override
fun
getStatusBarHeightView
()
=
binding
.
viewSplash
override
fun
getStatusBarHeightView
()
=
binding
.
viewSplash
override
fun
initData
()
{
override
fun
initData
()
{
super
.
initData
()
super
.
initData
()
if
(
CommonUtils
.
getAppMetaData
(
AppApplication
.
getContext
(),
"CHANNEL_NAME"
)
.
equals
(
"vivo"
)
)
{
isInterceptAd
=
true
viewModel
.
isShowVivo
()
handler
.
postDelayed
({
if
(
isInterceptAd
)
{
isInterceptAd
=
false
goToMainActivity
()
}
},
5000
)
//延迟5秒执行
}
//点击Home键后再点击App图标,会回到原来的界面。今天重新打包后,但是在Debug模式下,一切正常,
//点击Home键后再点击App图标,会回到原来的界面。今天重新打包后,但是在Debug模式下,一切正常,
// 但是把打完包的apk(Release)安装在其他手机上时,回到桌面后点击图标会重新打开启动页
// 但是把打完包的apk(Release)安装在其他手机上时,回到桌面后点击图标会重新打开启动页
if
(!
isTaskRoot
)
{
if
(!
isTaskRoot
)
{
...
@@ -94,6 +106,19 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
...
@@ -94,6 +106,19 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
// msplash = null
// msplash = null
}
}
override
fun
initViewObservable
()
{
viewModel
.
vivoShow
.
observe
(
this
,
Observer
{
it
?.
let
{
if
(
it
){
isInterceptAd
=
false
loadSplashAd
()
}
else
{
goToMainActivity
()
}
}
})
}
/**
/**
* 校验App签名
* 校验App签名
*/
*/
...
@@ -118,7 +143,12 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
...
@@ -118,7 +143,12 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
/**
/**
* 加载开屏广告
* 加载开屏广告
*/
*/
private
var
isInterceptAd
=
false
private
fun
loadSplashAd
()
{
private
fun
loadSplashAd
()
{
if
(
isInterceptAd
)
{
return
}
/**
/**
* 注:每次加载开屏广告的时候需要新建一个TTSplashAd,否则可能会出现广告填充问题
* 注:每次加载开屏广告的时候需要新建一个TTSplashAd,否则可能会出现广告填充问题
* ( 例如:mTTSplashAd = new TTSplashAd(this, mAdUnitId);)
* ( 例如:mTTSplashAd = new TTSplashAd(this, mAdUnitId);)
...
@@ -128,13 +158,16 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
...
@@ -128,13 +158,16 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
//step3:创建开屏广告请求参数AdSlot,具体参数含义参考文档
//step3:创建开屏广告请求参数AdSlot,具体参数含义参考文档
val
adSlot
=
AdSlot
.
Builder
()
val
adSlot
=
AdSlot
.
Builder
()
.
setImageAdSize
(
1080
,
1920
)
// 既适用于原生类型,也适用于模版类型。
.
setImageAdSize
(
1080
,
1920
)
// 既适用于原生类型,也适用于模版类型。
.
build
()
.
build
()
//自定义兜底方案 选择使用
//自定义兜底方案 选择使用
val
ttNetworkRequestInfo
:
TTNetworkRequestInfo
val
ttNetworkRequestInfo
:
TTNetworkRequestInfo
//穿山甲兜底
//穿山甲兜底
ttNetworkRequestInfo
=
PangleNetworkRequestInfo
(
CsjGroMoreManager
.
TT_AD_APPID
,
CsjGroMoreManager
.
AD_CSJ_SPLASH_ID
)
ttNetworkRequestInfo
=
PangleNetworkRequestInfo
(
CsjGroMoreManager
.
TT_AD_APPID
,
CsjGroMoreManager
.
AD_CSJ_SPLASH_ID
)
//step4:请求广告,调用开屏广告异步请求接口,对请求回调的广告作渲染处理
//step4:请求广告,调用开屏广告异步请求接口,对请求回调的广告作渲染处理
mTTSplashAd
?.
loadAd
(
adSlot
,
ttNetworkRequestInfo
,
object
:
TTSplashAdLoadCallback
{
mTTSplashAd
?.
loadAd
(
adSlot
,
ttNetworkRequestInfo
,
object
:
TTSplashAdLoadCallback
{
// mTTSplashAd.loadAd(adSlot, new TTSplashAdLoadCallback() {
// mTTSplashAd.loadAd(adSlot, new TTSplashAdLoadCallback() {
...
@@ -172,68 +205,13 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
...
@@ -172,68 +205,13 @@ class SplashActivity : BaseActivity<ActivitySplashBinding, SplashViewModel>() {
* 跳转到主页面
* 跳转到主页面
*/
*/
private
fun
goToMainActivity
()
{
private
fun
goToMainActivity
()
{
if
(
MMKV
.
mmkvWithID
(
Constant
.
FIRST_OPEN_PERMISSIONS
).
decodeBool
(
Constant
.
FIRST_OPEN_PERMISSIONS
,
false
))
{
if
(
MMKV
.
mmkvWithID
(
Constant
.
FIRST_OPEN_PERMISSIONS
)
.
decodeBool
(
Constant
.
FIRST_OPEN_PERMISSIONS
,
false
)
)
{
// 非新用户
// 非新用户
startActivityThenKill
(
MainActivity
::
class
.
java
)
startActivityThenKill
(
MainActivity
::
class
.
java
)
}
else
{
}
else
{
startActivityThenKill
(
PermissionsActivity
::
class
.
java
)
startActivityThenKill
(
PermissionsActivity
::
class
.
java
)
}
}
}
}
private
fun
showPowerDialog
()
{
if
(
MMKV
.
mmkvWithID
(
Constant
.
LOAN_PERMISSION_FLAG
).
decodeBool
(
Constant
.
LOAN_PERMISSION_FLAG
,
true
))
{
powerDialog
()
}
else
{
isClickAgree
=
true
try
{
msplash
=
findViewById
(
R
.
id
.
fl_splash
)
//加载开屏广告
loadSplashAd
()
}
catch
(
e
:
Exception
)
{
goToMainActivity
()
}
}
}
/**
* 权限弹窗
*/
private
fun
powerDialog
()
{
powerDialog
=
PowerDialog
(
this
,
object
:
DialogListener
()
{
override
fun
onClick
(
v
:
View
)
{
when
(
v
.
id
)
{
R
.
id
.
tv_dialogper_agreement
->
{
MintsWebViewActivity
.
startWebView
(
name
=
"用户协议"
,
url
=
Constant
.
REGISTER_URL
)
}
R
.
id
.
tv_dialogper_policy
->
{
MintsWebViewActivity
.
startWebView
(
name
=
"隐私协议"
,
url
=
Constant
.
PRIVACY_URL
)
}
R
.
id
.
btn_dialogper_back
->
{
if
(
powerDialog
!=
null
&&
powerDialog
!!
.
isShowing
)
{
ToastUtils
.
showLong
(
"请您同意授权,否则将无法使用APP功能"
)
}
}
R
.
id
.
btn_dialogper_next
->
{
if
(
powerDialog
!=
null
&&
powerDialog
!!
.
isShowing
)
{
powerDialog
!!
.
dismiss
()
try
{
msplash
=
findViewById
(
R
.
id
.
fl_splash
)
//加载开屏广告
loadSplashAd
()
}
catch
(
e
:
Exception
)
{
goToMainActivity
()
}
isClickAgree
=
true
MMKV
.
mmkvWithID
(
Constant
.
LOAN_PERMISSION_FLAG
).
encode
(
Constant
.
LOAN_PERMISSION_FLAG
,
false
)
}
}
}
}
})
powerDialog
?.
show
()
}
}
}
\ No newline at end of file
app/src/main/java/com/mints/street/splash/SplashViewModel.kt
View file @
ebbbce24
package
com.mints.street.splash
package
com.mints.street.splash
import
android.app.Application
import
android.app.Application
import
androidx.lifecycle.MutableLiveData
import
com.mints.street.api.MainApi
import
com.mints.street.bean.BaseResponse
import
com.mints.street.bean.VivoShowBean
import
com.mints.street.bean.VreperienceBean
import
com.mints.street.model.ApiModel
import
com.mints.street.netwrok.base.HttpSubscribeImpl
import
me.goldze.mvvmhabit.base.BaseViewModel
import
me.goldze.mvvmhabit.base.BaseViewModel
import
me.goldze.mvvmhabit.utils.KLog
import
me.goldze.mvvmhabit.utils.ToastUtils
/**
/**
* Created by 冯瑞雨 on 2021/7/5.
* Created by 冯瑞雨 on 2021/7/5.
*/
*/
class
SplashViewModel
(
application
:
Application
):
BaseViewModel
(
application
)
{
class
SplashViewModel
(
application
:
Application
):
BaseViewModel
(
application
)
{
val
vivoShow
=
MutableLiveData
<
Boolean
>()
fun
isShowVivo
(){
val
vo
=
HashMap
<
String
,
Any
>()
vo
[
"type"
]
=
1
ApiModel
.
vivoShow
(
lifecycleProvider
,
vo
).
safeSubscribe
(
object
:
HttpSubscribeImpl
<
BaseResponse
<
VivoShowBean
>>(
null
,
false
){
override
fun
onBusinessSuccess
(
response
:
BaseResponse
<
VivoShowBean
>)
{
vivoShow
.
value
=
response
.
result
?.
showAd
?:
false
}
override
fun
onError
(
e
:
Throwable
)
{
}
}
)
}
}
}
\ No newline at end of file
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