Commit def4fe73 authored by wanglei's avatar wanglei

...

parent 85c4a376
......@@ -26,12 +26,7 @@
android:theme="@style/Theme.BrowserWhite"
android:usesCleartextTraffic="true"
tools:targetApi="34">
<activity
android:name=".ui.activity.download.WebDownloadManagerActivity"
android:exported="false" />
<activity
android:name=".ui.activity.download.WebDownloadGuideActivity"
android:exported="false" />
<activity
android:name=".ui.activity.SplashActivity"
android:exported="true"
......@@ -42,6 +37,18 @@
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.activity.download.WebDownloadManagerActivity"
android:exported="false"
android:launchMode="singleTop"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.activity.download.WebDownloadGuideActivity"
android:exported="false"
android:launchMode="singleTop"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.activity.news.NewsDetailActivity"
android:exported="false"
......
package com.base.browserwhite.bean
data class DownloadBean(val path: String, val time: Long = 0) {
data class DownloadBean(
val downloadId: Long=0,
val path: String="",
val time: String = ""
) {
var isTime: Boolean = false
}
\ No newline at end of file
package com.base.browserwhite.utils
package com.base.browserwhite.help
import android.util.Base64
import java.security.SecureRandom
......
package com.base.browserwhite.utils
package com.base.browserwhite.help
import com.base.browserwhite.BuildConfig
import com.base.browserwhite.bean.NewsBean
import com.base.browserwhite.utils.AppPreferences
import com.base.browserwhite.utils.ConfigHelper
import com.base.browserwhite.utils.LogEx
import com.google.gson.Gson
import com.google.gson.JsonParser
import com.google.gson.reflect.TypeToken
......
package com.base.browserwhite.utils;
package com.base.browserwhite.help;
import android.text.TextUtils;
import com.base.browserwhite.utils.LogEx;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
......
......@@ -18,6 +18,7 @@ import com.base.browserwhite.ui.fragment.FileFragment
import com.base.browserwhite.ui.fragment.HomeFragment
import com.base.browserwhite.ui.views.DialogViews.showMyAccountDialog
import com.base.browserwhite.utils.BarUtils
import com.base.browserwhite.utils.VideoDownloader
import java.io.File
class MainActivity : BaseActivity<ActivityMainBinding>() {
......@@ -63,7 +64,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
override fun onPageSelected(position: Int) {
}
})
VideoDownloader.downloadVideo(this, "https://assets.mixkit.co/videos/4702/4702-720.mp4")
}
......
package com.base.browserwhite.ui.activity.download
import com.base.browserwhite.databinding.FragmentDownloadGuideBinding
import com.base.browserwhite.ui.fragment.BaseFragment
class DownloadGuideFragment() : BaseFragment<FragmentDownloadGuideBinding>() {
private var index = 0
constructor(index: Int) : this() {
this.index = index
}
override val binding: FragmentDownloadGuideBinding by lazy {
FragmentDownloadGuideBinding.inflate(layoutInflater)
}
override fun setView() {
}
}
\ No newline at end of file
package com.base.browserwhite.ui.activity.download
import com.base.browserwhite.R
import android.graphics.Color
import androidx.activity.addCallback
import androidx.core.view.isVisible
import androidx.core.view.updatePadding
import androidx.fragment.app.Fragment
import androidx.viewpager2.adapter.FragmentStateAdapter
import androidx.viewpager2.widget.ViewPager2
import com.base.browserwhite.databinding.ActivityWebDownloadGuideBinding
import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.utils.BarUtils
class WebDownloadGuideActivity : BaseActivity<ActivityWebDownloadGuideBinding>() {
private val fragment1: DownloadGuideFragment by lazy {
DownloadGuideFragment(0)
}
private val fragment2: DownloadGuideFragment by lazy {
DownloadGuideFragment(1)
}
private val fragment3: DownloadGuideFragment by lazy {
DownloadGuideFragment(2)
}
private val fragment4: DownloadGuideFragment by lazy {
DownloadGuideFragment(3)
}
private var currentPosition: Int = 0
private val fragments by lazy {
mutableListOf(fragment1, fragment2, fragment3, fragment4)
}
override val binding: ActivityWebDownloadGuideBinding by lazy {
ActivityWebDownloadGuideBinding.inflate(layoutInflater)
}
override fun initView() {
BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
binding.viewPager2.run {
adapter = object : FragmentStateAdapter(this@WebDownloadGuideActivity) {
override fun getItemCount(): Int {
return fragments.size
}
override fun createFragment(position: Int): Fragment {
return fragments[position]
}
}
}
binding.viewPager2.registerOnPageChangeCallback(object :
ViewPager2.OnPageChangeCallback() {
override fun onPageSelected(position: Int) {
currentPosition = position
binding.ivBefore.isVisible = currentPosition > 0
binding.ivNext.isVisible = currentPosition < 3
}
})
}
override fun initListener() {
super.initListener()
onBackPressedDispatcher.addCallback { finishToMain() }
binding.flFanhui.setOnClickListener {
onBackPressedDispatcher.onBackPressed()
}
}
}
\ No newline at end of file
package com.base.browserwhite.ui.activity.download
import android.content.Intent
import android.graphics.Color
import android.os.Environment
import androidx.activity.addCallback
import androidx.core.view.isVisible
import androidx.core.view.updatePadding
import com.base.browserwhite.R
import com.base.browserwhite.bean.DownloadBean
import com.base.browserwhite.databinding.ActivityWebDownloadManagerBinding
import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.ui.adapter.DownloadAdapter
import com.base.browserwhite.ui.views.DialogViews.showGerPermission
import com.base.browserwhite.utils.BarUtils
import com.base.browserwhite.utils.KotlinExt.toFormatTime
import com.base.browserwhite.utils.PermissionHelp.checkStorePermission
import com.base.browserwhite.utils.PermissionHelp.requestStorePermission
import java.io.File
class WebDownloadManagerActivity : BaseActivity<ActivityWebDownloadManagerBinding>() {
......@@ -22,6 +33,57 @@ class WebDownloadManagerActivity : BaseActivity<ActivityWebDownloadManagerBindin
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
adapter = DownloadAdapter()
binding.rv.adapter = adapter
if (checkStorePermission()) {
initData()
} else {
showGerPermission(desc = "", deny = { finishToMain() }, allow = {
requestStorePermission(launcher, result = {
if (it) initData() else finishToMain()
})
})
}
}
override fun initListener() {
super.initListener()
onBackPressedDispatcher.addCallback {
finishToMain()
}
binding.flFanhui.setOnClickListener {
onBackPressedDispatcher.onBackPressed()
}
binding.tvHowUse.setOnClickListener {
startActivity(Intent(this, WebDownloadGuideActivity::class.java))
finish()
}
}
private fun initData() {
val appName: String = resources.getString(R.string.app_name)
val dir = File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), appName)
// dir.listFiles().isNullOrEmpty()
if (true) {
binding.llEmpty.isVisible = true
} else {
val fileList = arrayListOf<File>()
val timeList = arrayListOf<String>()
val beanList = arrayListOf<DownloadBean>()
fileList.addAll(dir.listFiles() ?: arrayOf())
fileList.sortBy { it.lastModified() }
fileList.forEach {
val time = it.lastModified().toFormatTime()
if (!timeList.contains(time)) {
timeList.add(time)
beanList.add(DownloadBean(time = time).apply { isTime = true })
} else {
beanList.add(DownloadBean(path = it.absolutePath))
}
}
adapter.submitList(beanList)
}
}
}
\ No newline at end of file
......@@ -11,7 +11,7 @@ import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.ui.adapter.NewsAdapter
import com.base.browserwhite.utils.BarUtils
import com.base.browserwhite.utils.LogEx
import com.base.browserwhite.utils.NewsUtils
import com.base.browserwhite.help.NewsUtils
import com.chad.library.adapter4.QuickAdapterHelper
import com.chad.library.adapter4.loadState.LoadState
import com.chad.library.adapter4.loadState.trailing.TrailingLoadStateAdapter
......
......@@ -7,7 +7,7 @@ import androidx.fragment.app.FragmentTransaction
import com.base.browserwhite.R
import com.base.browserwhite.databinding.ActivityNewsDetailBinding
import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.ui.fragment.WebViewFragment
import com.base.browserwhite.ui.activity.webbrowser.WebViewFragment
import com.base.browserwhite.utils.BarUtils
class NewsDetailActivity : BaseActivity<ActivityNewsDetailBinding>() {
......
......@@ -7,15 +7,12 @@ import androidx.activity.addCallback
import com.base.browserwhite.bean.ConstObject.JUNK_CLEANER
import com.base.browserwhite.databinding.ActivityResultBinding
import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.ui.activity.news.NewsActivity
import com.base.browserwhite.ui.activity.news.NewsDetailActivity
import com.base.browserwhite.ui.activity.webbrowser.WebBrowserActivity
import com.base.browserwhite.ui.adapter.NewsAdapter
import com.base.browserwhite.ui.fragment.HomeFragment
import com.base.browserwhite.utils.BarUtils
import com.base.browserwhite.utils.KotlinExt.toFormatSize
import com.base.browserwhite.utils.LogEx
import com.base.browserwhite.utils.NewsUtils
import com.base.browserwhite.help.NewsUtils
import com.chad.library.adapter4.QuickAdapterHelper
import com.chad.library.adapter4.loadState.LoadState
import com.chad.library.adapter4.loadState.trailing.TrailingLoadStateAdapter
......
......@@ -15,7 +15,6 @@ import com.base.browserwhite.bean.ConstObject.GOOGLE
import com.base.browserwhite.databinding.ActivityWebBrowserBinding
import com.base.browserwhite.ui.activity.BaseActivity
import com.base.browserwhite.ui.fragment.HomeFragment
import com.base.browserwhite.ui.fragment.WebViewFragment
import com.base.browserwhite.ui.views.DialogViews.showSearchEngineDialog
import com.base.browserwhite.utils.BarUtils
......
package com.base.browserwhite.ui.fragment
package com.base.browserwhite.ui.activity.webbrowser
import android.annotation.SuppressLint
import android.net.Uri
import android.net.http.SslError
import android.os.Handler
import android.os.Looper
import android.view.View
import android.webkit.CookieManager
import android.webkit.JsResult
......@@ -19,6 +17,7 @@ import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.lifecycle.lifecycleScope
import com.base.browserwhite.databinding.FragmentWebViewBinding
import com.base.browserwhite.ui.fragment.BaseFragment
import com.base.browserwhite.utils.LogEx
import kotlinx.coroutines.Job
import kotlinx.coroutines.delay
......
......@@ -25,11 +25,11 @@ class DownloadAdapter : BaseQuickAdapter<DownloadBean, DownloadAdapter.DownloadV
val context = holder.itemView.context
if (item.isTime) {
val binding = ItemDownloadTimeBinding.bind(holder.itemView)
binding.tvTime.text = item.time.toFormatTime()
binding.tvTime.text = item.time
} else {
val binding = ItemDownloadBinding.bind(holder.itemView)
val file = File(item.path)
Glide.with(context).load(file.absoluteFile).into(binding.iv)
Glide.with(context).load(file.absoluteFile).centerCrop().into(binding.iv)
binding.tvName.text = file.name
binding.tvSize.text = file.length().toFormatSize()
}
......
......@@ -7,10 +7,14 @@ import android.view.View
import androidx.lifecycle.lifecycleScope
import com.base.browserwhite.BuildConfig
import com.base.browserwhite.bean.MediaBean
import com.base.browserwhite.databinding.ActivityWebDownloadGuideBinding
import com.base.browserwhite.databinding.FragmentFileBinding
import com.base.browserwhite.ui.activity.MainActivity
import com.base.browserwhite.ui.activity.cleanjunk.ScanJunkActivity
import com.base.browserwhite.ui.activity.download.WebDownloadGuideActivity
import com.base.browserwhite.ui.activity.download.WebDownloadManagerActivity
import com.base.browserwhite.ui.activity.mediabrowser.MediaBrowserActivity
import com.base.browserwhite.ui.activity.webbrowser.WebBrowserActivity
import com.base.browserwhite.ui.adapter.MediaAdapter
import com.base.browserwhite.ui.views.DialogViews.showDeleteTipDialog
import com.base.browserwhite.ui.views.DialogViews.showMediaMoreDialog
......@@ -124,6 +128,13 @@ class FileFragment : BaseFragment<FragmentFileBinding>() {
putExtra("tittle", "Zip")
})
}
binding.llDownload.setOnClickListener {
// requireActivity().startActivity(Intent(requireContext(), WebBrowserActivity::class.java).apply {
// putExtra("url", "https://mixkit.co/free-stock-video/girl-dancing-happily-in-a-field-of-flowers-4702/")
// })
startActivity(Intent(requireContext(), WebDownloadManagerActivity::class.java))
}
}
......
......@@ -33,23 +33,14 @@ import com.base.browserwhite.ui.adapter.NewsAdapter
import com.base.browserwhite.ui.views.DialogViews.showSearchEngineDialog
import com.base.browserwhite.utils.AppPreferences
import com.base.browserwhite.utils.LogEx
import com.base.browserwhite.utils.NewsUtils.requestNews
import com.base.browserwhite.help.NewsUtils.requestNews
import com.chad.library.adapter4.QuickAdapterHelper
import com.chad.library.adapter4.loadState.LoadState
import com.chad.library.adapter4.loadState.trailing.TrailingLoadStateAdapter
import okhttp3.Call
import okhttp3.Callback
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.Response
import java.io.File
import java.io.FileOutputStream
import java.io.IOException
import java.net.MalformedURLException
import java.net.URL
import java.net.URLEncoder
import java.nio.charset.StandardCharsets
import java.util.Locale
class HomeFragment : BaseFragment<FragmentHomeBinding>() {
......
......@@ -2,7 +2,8 @@ package com.base.browserwhite.utils
import android.os.Build
import com.base.browserwhite.BuildConfig
import com.base.browserwhite.utils.ReportUtils.doPost
import com.base.browserwhite.help.AESHelper
import com.base.browserwhite.help.ReportUtils.doPost
import org.json.JSONException
import org.json.JSONObject
......
......@@ -9,7 +9,6 @@ import android.os.Build
import android.os.Environment
import android.provider.Settings
import androidx.core.app.ActivityCompat
import com.base.browserwhite.utils.PermissionHelp.checkStorePermission
object PermissionHelp {
......
package com.base.browserwhite.utils
import android.annotation.SuppressLint
import android.app.DownloadManager
import android.content.Context
import android.database.Cursor
import android.net.Uri
import android.os.Environment
import com.base.browserwhite.R
import java.io.File
object VideoDownloader {
//https://assets.mixkit.co/videos/4702/4702-720.mp4
fun downloadVideo(context: Context, uri: String): Pair<Long, File> {
val downloadManager = context.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
val fileName = uri.split("/").last()
// 创建一个DownloadManager.Request对象
val request = DownloadManager.Request(Uri.parse(uri))
// 设置下载的标题和描述
request.setTitle(fileName)
request.setDescription("Downloading $fileName")
// 设置通知栏的可见性
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED)
// 设置下载的文件类型
request.setMimeType("video/mp4")
// 设置下载文件的存储位置
val subPath = context.resources.getString(R.string.app_name) + "/$fileName"
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, subPath)
// 设置是否允许漫游
request.setAllowedOverRoaming(false)
// 将下载请求加入下载队列
val downloadId = downloadManager.enqueue(request)
val filePath = File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), subPath)
return Pair(downloadId, filePath)
}
fun queryDownloadProgress(
context: Context,
downloadId: Long,
uiAction: (progress: Int) -> Uri,
noRunningAction: (status: Int) -> Uri
) {
val downloadManager = context.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
// 创建查询对象
val query = DownloadManager.Query().setFilterById(downloadId)
// 执行查询
val cursor = downloadManager.query(query)
// 检查游标是否有数据
if (cursor != null && cursor.moveToFirst()) {
// 获取下载的状态
val columnIndexStatus = cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)
val status = cursor.getInt(columnIndexStatus)
// 检查下载是否还在进行中
if (status == DownloadManager.STATUS_RUNNING) {
// 获取下载的进度
val columnIndexBytesDownloadedSoFar = cursor.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)
val bytesDownloadedSoFar = cursor.getLong(columnIndexBytesDownloadedSoFar)
val columnIndexTotalSizeBytes = cursor.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES)
val totalSizeBytes = cursor.getLong(columnIndexTotalSizeBytes)
// 计算下载的百分比
val progress = (100 * bytesDownloadedSoFar.toFloat() / totalSizeBytes.toFloat()).toInt()
// 在这里处理进度更新,例如更新UI
uiAction.invoke(progress)
} else {
// 处理下载完成或出错的情况
noRunningAction.invoke(status)
when (status) {
DownloadManager.STATUS_PAUSED -> {
println("Download paused")
}
DownloadManager.STATUS_FAILED -> {
println("Download failed")
}
DownloadManager.STATUS_SUCCESSFUL -> {
println("Download successful")
}
}
}
// 关闭游标
cursor.close()
}
}
@SuppressLint("Range")
fun queryDownloadFilePath(context: Context, downloadId: Long): String {
var filePath: String = ""
val downloadManager = context.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
runCatching {
val query = DownloadManager.Query().setFilterById(downloadId)
val cursor: Cursor = downloadManager.query(query)
if (cursor.moveToFirst()) {
val status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS))
if (status == DownloadManager.STATUS_SUCCESSFUL) {
//下载文件的本地路径
filePath = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME))
}
}
cursor.close()
}
return filePath
}
}
\ No newline at end of file
......@@ -5,6 +5,80 @@
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#4688C5"
tools:context=".ui.activity.download.WebDownloadGuideActivity">
<FrameLayout
android:id="@+id/fl_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|start"
android:layout_marginVertical="10dp"
android:layout_marginStart="10dp"
tools:ignore="UselessParent">
<FrameLayout
android:id="@+id/fl_fanhui"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/w_fanhui"
tools:ignore="ContentDescription" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="How to download videos"
android:textColor="@color/white"
android:textSize="19sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
</LinearLayout>
</FrameLayout>
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager2"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/iv_before"
app:layout_constraintTop_toBottomOf="@id/fl_top" />
<ImageView
android:id="@+id/iv_before"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginBottom="45dp"
android:src="@mipmap/shangyibu"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="ContentDescription" />
<ImageView
android:id="@+id/iv_next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="20dp"
android:layout_marginBottom="45dp"
android:src="@mipmap/xiayibu"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
tools:ignore="ContentDescription" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -61,6 +61,13 @@
android:layout_height="0dp"
android:layout_weight="1">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/item_download" />
<LinearLayout
android:id="@+id/ll_empty"
android:layout_width="wrap_content"
......@@ -92,6 +99,8 @@
android:layout_gravity="center"
android:layout_marginTop="22dp"
android:background="@drawable/bg_0571ed_25"
android:clickable="true"
android:focusable="true"
android:gravity="center"
android:text="How to download videos"
android:textColor="@color/white"
......@@ -99,14 +108,6 @@
tools:ignore="HardcodedText" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/item_download" />
</FrameLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#4688C5"
tools:context=".ui.activity.download.WebDownloadGuideActivity">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/tu1"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.35" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -248,13 +248,13 @@
</androidx.cardview.widget.CardView>
<LinearLayout
android:id="@+id/ll_download"
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_margin="16dp"
android:background="@drawable/bg_storke_dee9f4"
android:elevation="0dp"
android:orientation="horizontal"
android:visibility="gone">
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
......@@ -305,7 +305,6 @@
android:layout_width="match_parent"
android:layout_height="165dp"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="12dp"
android:layout_marginBottom="8dp"
android:background="@drawable/bg_storke_dee9f4"
android:orientation="vertical">
......
......@@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ui.fragment.WebViewFragment">
tools:context=".ui.activity.webbrowser.WebViewFragment">
<ProgressBar
android:id="@+id/progress_bar"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment