Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
D
Data Recovery White
Project
Project
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Data Recovery White
Commits
f9a69403
Commit
f9a69403
authored
Jul 18, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
4911d0ad
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
66 additions
and
4 deletions
+66
-4
README.md
README.md
+6
-1
AdmobBannerColla.kt
.../java/com/base/datarecovery/ads/admob/AdmobBannerColla.kt
+53
-0
HomeFragment.kt
.../main/java/com/base/datarecovery/fragment/HomeFragment.kt
+5
-2
ConfigHelper.kt
app/src/main/java/com/base/datarecovery/help/ConfigHelper.kt
+2
-1
No files found.
README.md
View file @
f9a69403
# Data Recovery White
# Data Recovery White
文件恢复类型应用
文件恢复类型应用
\ No newline at end of file
1.
广告使用max聚合,admob的 <meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713" />也需要配置
2.
max聚合,不设置为测试设备,广告id不对会崩溃
\ No newline at end of file
app/src/main/java/com/base/datarecovery/ads/admob/AdmobBannerColla.kt
0 → 100644
View file @
f9a69403
package
com.base.datarecovery.ads.admob
import
android.content.Context
import
android.os.Bundle
import
android.util.Log
import
android.view.ViewGroup
import
android.view.ViewTreeObserver
import
com.base.datarecovery.help.ConfigHelper
import
com.google.ads.mediation.admob.AdMobAdapter
import
com.google.android.gms.ads.AdListener
import
com.google.android.gms.ads.AdRequest
import
com.google.android.gms.ads.AdSize
import
com.google.android.gms.ads.AdView
import
java.util.UUID
object
AdmobBannerUtils
{
private
var
adView
:
AdView
?
=
null
private
var
listener
:
ViewTreeObserver
.
OnGlobalLayoutListener
?
=
null
fun
showCollapsibleBannerAd
(
context
:
Context
,
parent
:
ViewGroup
)
{
if
(
adView
!=
null
)
{
adView
?.
destroy
()
}
adView
=
AdView
(
context
)
parent
.
removeAllViews
()
parent
.
addView
(
adView
)
listener
=
ViewTreeObserver
.
OnGlobalLayoutListener
{
val
screenPixelDensity
=
context
.
resources
.
displayMetrics
.
density
val
adWidth
=
(
parent
.
width
/
screenPixelDensity
).
toInt
()
val
adSize
=
AdSize
.
getCurrentOrientationAnchoredAdaptiveBannerAdSize
(
context
,
adWidth
)
adView
?.
adUnitId
=
ConfigHelper
.
bannerAdmobId
adView
?.
setAdSize
(
adSize
)
loadCollapsibleBanner
()
parent
.
viewTreeObserver
.
removeOnGlobalLayoutListener
(
listener
)
}
parent
.
viewTreeObserver
.
addOnGlobalLayoutListener
(
listener
)
}
private
fun
loadCollapsibleBanner
()
{
val
extras
=
Bundle
()
extras
.
putString
(
"collapsible"
,
"bottom"
)
extras
.
putString
(
"collapsible_request_id"
,
UUID
.
randomUUID
().
toString
())
val
adRequest
=
AdRequest
.
Builder
().
addNetworkExtrasBundle
(
AdMobAdapter
::
class
.
java
,
extras
).
build
()
adView
?.
adListener
=
object
:
AdListener
()
{
override
fun
onAdLoaded
()
{}
}
adView
?.
loadAd
(
adRequest
)
}
}
\ No newline at end of file
app/src/main/java/com/base/datarecovery/fragment/HomeFragment.kt
View file @
f9a69403
...
@@ -15,6 +15,7 @@ import com.base.datarecovery.activity.recovery.FileScanResultActivity
...
@@ -15,6 +15,7 @@ import com.base.datarecovery.activity.recovery.FileScanResultActivity
import
com.base.datarecovery.activity.repeat.RepeatAnimationActivity
import
com.base.datarecovery.activity.repeat.RepeatAnimationActivity
import
com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity
import
com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity
import
com.base.datarecovery.ads.AdmobMaxHelper
import
com.base.datarecovery.ads.AdmobMaxHelper
import
com.base.datarecovery.ads.admob.AdmobBannerUtils
import
com.base.datarecovery.bean.ConstObject.SCAN_DOCUMENTS
import
com.base.datarecovery.bean.ConstObject.SCAN_DOCUMENTS
import
com.base.datarecovery.bean.ConstObject.SCAN_PHOTOS
import
com.base.datarecovery.bean.ConstObject.SCAN_PHOTOS
import
com.base.datarecovery.bean.ConstObject.SCAN_VIDEOS
import
com.base.datarecovery.bean.ConstObject.SCAN_VIDEOS
...
@@ -36,8 +37,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
...
@@ -36,8 +37,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
animatorSet
=
createHeartbeatAnimation
(
binding
.
flScan
)
animatorSet
=
createHeartbeatAnimation
(
binding
.
flScan
)
val
flag
=
(
requireActivity
()
as
MainActivity
).
permissionDialogShowed
val
flag
=
(
requireActivity
()
as
MainActivity
).
permissionDialogShowed
if
(
flag
)
{
if
(
flag
)
{
AdmobMaxHelper
.
admobMaxShowNativeAd
(
requireActivity
(),
binding
.
flAd
,
0
)
// AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
// AdmobBannerUtils.showCollapsibleBannerAd(requireContext(), binding.flAd)
}
}
AdmobBannerUtils
.
showCollapsibleBannerAd
(
requireContext
(),
binding
.
flAd
)
}
}
override
fun
setListener
()
{
override
fun
setListener
()
{
...
@@ -120,7 +123,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
...
@@ -120,7 +123,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
if
(
resumeTime
!=
0
)
{
if
(
resumeTime
!=
0
)
{
val
flag
=
(
requireActivity
()
as
MainActivity
).
permissionDialogShowed
val
flag
=
(
requireActivity
()
as
MainActivity
).
permissionDialogShowed
if
(
flag
)
{
if
(
flag
)
{
AdmobMaxHelper
.
admobMaxShowNativeAd
(
requireActivity
(),
binding
.
flAd
,
0
)
//
AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
}
}
}
}
resumeTime
++
resumeTime
++
...
...
app/src/main/java/com/base/datarecovery/help/ConfigHelper.kt
View file @
f9a69403
...
@@ -11,12 +11,13 @@ object ConfigHelper {
...
@@ -11,12 +11,13 @@ object ConfigHelper {
const
val
eventUrl
=
"https://rp.rocioxyn.xyz"
const
val
eventUrl
=
"https://rp.rocioxyn.xyz"
const
val
apiUrl
=
"https://api.rocioxyn.xyz"
const
val
apiUrl
=
"https://api.rocioxyn.xyz"
const
val
admobTrueMaxFlase
=
fals
e
const
val
admobTrueMaxFlase
=
tru
e
// admob广告id
// admob广告id
const
val
interAdmobId
=
"ca-app-pub-3940256099942544/1033173712"
const
val
interAdmobId
=
"ca-app-pub-3940256099942544/1033173712"
const
val
nativeAdmobId
=
"ca-app-pub-3940256099942544/2247696110"
const
val
nativeAdmobId
=
"ca-app-pub-3940256099942544/2247696110"
const
val
openAdmobId
=
"/6499/example/app-open"
const
val
openAdmobId
=
"/6499/example/app-open"
const
val
bannerAdmobId
=
"ca-app-pub-3940256099942544/9214589741"
//max广告id
//max广告id
const
val
interAdMaxId
=
"aa"
const
val
interAdMaxId
=
"aa"
...
...
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