From cc65eed48dd8855c7505a6713db30b57fb45b93d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=8E=89=E4=B9=85?= <1484288157@qq.com> Date: Thu, 9 Jan 2020 18:25:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV3.7.2=20RE?= =?UTF-8?q?LEASE=EF=BC=8820200107-1830=EF=BC=89=E6=B5=8B=E8=AF=95=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E6=B1=87=E6=80=BB=EF=BC=88=E8=A7=86=E9=A2=91=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=EF=BC=89https://gitlab.ghzs.com/pm/halo-app-issues/is?= =?UTF-8?q?sues/751?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/common/util/DirectUtils.kt | 2 +- .../java/com/gh/gamecenter/MainActivity.java | 23 ++++--- .../gamedetail/video/TopVideoView.kt | 5 +- .../gamecenter/personal/PersonalFragment.java | 17 +++--- .../video/detail/DetailPlayerView.kt | 56 +++++++++++------- .../detail/VideoDetailContainerFragment.kt | 4 ++ .../assistant/fragment/SettingsFragment.java | 18 +++--- .../res/drawable-hdpi/personal_card_bg.9.png | Bin 1455 -> 4085 bytes .../drawable-xxhdpi/ic_video_detail_liked.png | Bin 2362 -> 2591 bytes app/src/main/res/layout/fragment_about.xml | 2 +- .../res/layout/item_personal_fun_group.xml | 2 +- .../layout/layout_video_detail_surface.xml | 1 + 12 files changed, 75 insertions(+), 55 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/DirectUtils.kt b/app/src/main/java/com/gh/common/util/DirectUtils.kt index 7903556f64..b6357efc75 100644 --- a/app/src/main/java/com/gh/common/util/DirectUtils.kt +++ b/app/src/main/java/com/gh/common/util/DirectUtils.kt @@ -188,7 +188,7 @@ object DirectUtils { "wechat_bind" -> context.startActivity(WebActivity.getBindWechatIntent(context)) - "video" -> directToVideoDetail(context, + "video","video_stream" -> directToVideoDetail(context, videoId = linkEntity.link!!, fromLocation = VideoDetailContainerViewModel.Location.VIDEO_CHOICENESS.value, entrance = entrance, diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index 51762d5174..9918b4b7fd 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -25,9 +25,6 @@ import android.view.View; import android.view.Window; import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.lifecycle.ViewModelProviders; - import com.gh.base.AppUncaughtHandler; import com.gh.base.BaseActivity; import com.gh.base.fragment.BaseFragment_ViewPager; @@ -132,6 +129,8 @@ import java.util.UUID; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; +import androidx.annotation.NonNull; +import androidx.lifecycle.ViewModelProviders; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; import okhttp3.MediaType; @@ -597,7 +596,7 @@ public class MainActivity extends BaseActivity { @Override public boolean onKeyDown(int keyCode, KeyEvent event) { - if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { + if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0 && !mMainWrapperFragment.onHandleBackPressed()) { DownloadEntity downloadEntity = null; for (DownloadEntity entity : DownloadManager.getInstance(getApplicationContext()).getAll()) { if (entity.getStatus().equals(DownloadStatus.done)) { @@ -631,15 +630,13 @@ public class MainActivity extends BaseActivity { this::finish); return true; } - if (!mMainWrapperFragment.onHandleBackPressed()) { - System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1); - mHits[mHits.length - 1] = SystemClock.uptimeMillis(); - if (mHits[0] >= (SystemClock.uptimeMillis() - 1000)) { - finish(); - } else { - toast("再按一次就退出光环助手了哦"); - return true; - } + System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1); + mHits[mHits.length - 1] = SystemClock.uptimeMillis(); + if (mHits[0] >= (SystemClock.uptimeMillis() - 1000)) { + finish(); + } else { + toast("再按一次就退出光环助手了哦"); + return true; } } return super.onKeyDown(keyCode, event); diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt index 0f31367b92..ad0fe00282 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt @@ -202,7 +202,8 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS }, 100) } - override fun onCompletion() { + + override fun onAutoCompletion() { // 这个方法在内核被释放时也会被回调,所以可以用来统计播放量和播放时长 val playedTime = (gsyVideoManager.currentPosition / 1000).toInt() @@ -221,7 +222,7 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS } }, 10 * 1000) } - super.onCompletion() + super.onAutoCompletion() } override fun isShowNetConfirm(): Boolean { diff --git a/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java b/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java index dec4cb5bc3..6bf264cdeb 100644 --- a/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java +++ b/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java @@ -11,15 +11,6 @@ import android.view.View; import android.widget.ImageView; import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.appcompat.widget.Toolbar; -import androidx.core.content.ContextCompat; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProviders; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; - import com.facebook.drawee.view.SimpleDraweeView; import com.gh.base.fragment.BaseFragment; import com.gh.common.databind.BindingAdapters; @@ -82,6 +73,14 @@ import java.util.ArrayList; import java.util.Locale; import java.util.concurrent.TimeUnit; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.widget.Toolbar; +import androidx.core.content.ContextCompat; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProviders; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; import butterknife.BindView; import butterknife.OnClick; import io.reactivex.android.schedulers.AndroidSchedulers; diff --git a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt index 77a45653b6..08a76d9a58 100644 --- a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt +++ b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt @@ -9,6 +9,7 @@ import android.view.View import android.widget.ImageView import android.widget.SeekBar import androidx.core.content.ContextCompat +import com.gh.common.AppExecutor import com.gh.common.constant.Constants import com.gh.common.runOnIoThread import com.gh.common.util.* @@ -49,6 +50,7 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib private var byStartedClick = false //第一次进入不显示mBottomContainer private var mContentLength = 0.0 var repeatPlayCount = 0 //重复播放次数 + private var mIsDragSeek = false//是否拖动进度条 override fun init(context: Context) { super.init(context) @@ -154,7 +156,7 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib DirectUtils.directToHomeActivity(context, videoEntity.user.id ?: "", mEntrance, "视频详情") } - gameNameTv.setOnClickListener { + gameName.setOnClickListener { if (videoEntity.gameActive) { MtaHelper.onEvent("视频详情", "点击游戏名字", mCombinedTitleAndId) uploadVideoStreamingPlaying("点击游戏名字") @@ -298,6 +300,12 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib setViewShowState(mBottomProgressBar, View.VISIBLE) setViewShowState(mBottomContainer, View.GONE) errorContainer.visibility = View.GONE + + AppExecutor.uiExecutor.executeWithDelay(Runnable { + if (mCurrentState == CURRENT_STATE_PREPAREING) { + setViewShowState(mLoadingProgressBar, View.VISIBLE) + } + }, 2000) } override fun changeUiToPlayingShow() { @@ -407,6 +415,7 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib override fun onStartTrackingTouch(seekBar: SeekBar) { super.onStartTrackingTouch(seekBar) byStartedClick = true + mIsDragSeek = true if (mIfCurrentIsFullscreen) { MtaHelper.onEvent("视频详情", "全屏播放-拖动进度条", "${mVideoEntity!!.title}(${mVideoEntity!!.id})") } @@ -414,22 +423,24 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib } override fun onStopTrackingTouch(seekBar: SeekBar) { - super.onStopTrackingTouch(seekBar) - if (currentPositionWhenPlaying == 0) { - when (mCurrentState) { - CURRENT_STATE_PLAYING, CURRENT_STATE_PREPAREING, CURRENT_STATE_PLAYING_BUFFERING_START -> { - uploadVideoStreamingPlaying("开始播放-拖回0秒") - } - GSYVideoView.CURRENT_STATE_PAUSE -> { - uploadVideoStreamingPlaying("暂停-拖回0秒") + AppExecutor.uiExecutor.executeWithDelay(Runnable{ + super.onStopTrackingTouch(seekBar) + if (currentPositionWhenPlaying == 0) { + when (mCurrentState) { + CURRENT_STATE_PLAYING, CURRENT_STATE_PREPAREING, CURRENT_STATE_PLAYING_BUFFERING_START -> { + uploadVideoStreamingPlaying("开始播放-拖回0秒") + } + GSYVideoView.CURRENT_STATE_PAUSE -> { + uploadVideoStreamingPlaying("暂停-拖回0秒") + } } } - } - uploadVideoStreamingPlaying("结束拖动", (currentPositionWhenPlaying / 1000).toString()) - //拖动进度条松开手指后,直接从当前具体的秒数开始播放 - if (mCurrentState == GSYVideoView.CURRENT_STATE_PAUSE) { - onVideoResume() - } + uploadVideoStreamingPlaying("结束拖动", (currentPositionWhenPlaying / 1000).toString()) + //拖动进度条松开手指后,直接从当前具体的秒数开始播放 + if (mCurrentState == GSYVideoView.CURRENT_STATE_PAUSE) { + onVideoResume() + } + },500) } override fun getEnlargeImageRes(): Int { @@ -492,12 +503,15 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib } }, 10 * 1000) } else { - uploadVideoStreamingPlaying("播放完毕") - if (repeatPlayCount > 0) { - uploadVideoStreamingPlaying("重复播放完毕", "${repeatPlayCount}次") + if (!mIsDragSeek) { + uploadVideoStreamingPlaying("播放完毕") + if (repeatPlayCount > 0) { + uploadVideoStreamingPlaying("重复播放完毕", "${repeatPlayCount}次") + } + repeatPlayCount++ + mIsDragSeek = false + //mBottomProgressBar.progress = 100 } - repeatPlayCount++ - //mBottomProgressBar.progress = 100 } } catch (e: Exception) { e.printStackTrace() @@ -531,7 +545,7 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib override fun onClick(v: View) { when (v.id) { - R.id.surface_container -> { + R.id.surface_container,R.id.thumb -> { mStartButton.performClick() } R.id.start -> { diff --git a/app/src/main/java/com/gh/gamecenter/video/detail/VideoDetailContainerFragment.kt b/app/src/main/java/com/gh/gamecenter/video/detail/VideoDetailContainerFragment.kt index 67662ddc1d..19f2b747da 100644 --- a/app/src/main/java/com/gh/gamecenter/video/detail/VideoDetailContainerFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/video/detail/VideoDetailContainerFragment.kt @@ -393,6 +393,10 @@ class VideoDetailContainerFragment : BaseLazyFragment(), OnBackPressedListener { return Pair(itemHeight, iposition - itemTop) } +// override fun onResume() { +// DisplayUtils.setLightStatusBar(requireActivity(), false) +// super.onResume() +// } override fun onFragmentResume() { findFirstCompletelyVisibleVideoViewByPosition()?.uploadVideoStreamingPlaying("恢复页面") diff --git a/app/src/main/java/com/halo/assistant/fragment/SettingsFragment.java b/app/src/main/java/com/halo/assistant/fragment/SettingsFragment.java index e8bff158ce..bf0b8de1a3 100644 --- a/app/src/main/java/com/halo/assistant/fragment/SettingsFragment.java +++ b/app/src/main/java/com/halo/assistant/fragment/SettingsFragment.java @@ -198,12 +198,12 @@ public class SettingsFragment extends NormalFragment { } } else { DialogUtils.showAlertDialog(getContext(), - "提示", - "关闭后将无法统计游戏时长,确定要关闭吗?", - "确定关闭", - "暂不关闭", - () -> sp.edit().putBoolean(UsageStatsHelper.USAGE_STATUS_SP_KEY, false).apply(), - () -> mSettingUsageStatsSb.setCheckedNoEvent(true) + "提示", + "关闭后将无法统计游戏时长,确定要关闭吗?", + "确定关闭", + "暂不关闭", + () -> sp.edit().putBoolean(UsageStatsHelper.USAGE_STATUS_SP_KEY, false).apply(), + () -> mSettingUsageStatsSb.setCheckedNoEvent(true) ); } }); @@ -268,9 +268,13 @@ public class SettingsFragment extends NormalFragment { private long getFolderSize(File folder) { long size = 0; + //忽略视频缓存 + if (folder.getName().equals("video-cache")) return size; size += folder.length(); if (folder.isDirectory()) { - for (File file : folder.listFiles()) { + File[] files = folder.listFiles(); + if (files == null || files.length == 0) return size; + for (File file : files) { if (file.isDirectory()) { size += getFolderSize(file); } else { diff --git a/app/src/main/res/drawable-hdpi/personal_card_bg.9.png b/app/src/main/res/drawable-hdpi/personal_card_bg.9.png index df54658ea83a169d7d77488fe2f89fb1314b847c..9a2e05dcff2e40b559a15be226b9d94b91c885cb 100644 GIT binary patch literal 4085 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 VypMSJfa#Ap%{R!WaNW*5{{Tb?r*{AV literal 1455 zcmZWpeKga19R6X+TV5jFXmshAmyGU)#bmCRQfyZ#ZPe~P9Ww_r?{9g#?MJRqT-9c4 zUA3zubvZ|5Qd4%>#*p{WXrU7GntAE2&OMHE`sX>H=kt9&=kt7@?>XPxU$94ZXc%b# z0IHKeA5Zsyq`~Q7T=)HGbLGx^v3C`)79hNBVJf=KjY?^>Rnz%Awk+c3oFkGp}mycTSSvq zg5wXEN^# zHDH)>i7!nbgHqZAP+u1-f#_m^P1r2HwImSQ$t`lF@0rA4%P=5`kT-nWU8*%9=BT9X zZI@I_d^0@En3%$5x>ooY9m#S8^(PS$NPhsTyoqY$CxOVJ?aAmI&1Sk9?3ukDHq(!W zaA7Fi8n&<4riP&Mo*Q5>C`}utGx*iJ37nZrReqI?xTh96wfklC8ZTZ&ZXNyx&Ghj? z=}RDYcZ8ZTfe$&cmP|mi`OsE-ndxAxB2;M3e3w)uWwP22_2FEm+qY+kN>WPy4aKiA z6?=@ImQ>1rGz|<4bgN6pjMA1I)~*z~j~AA>xVWU2Y%KCZASrLn!imF$CB_HVGA(Uq zg8K9(JHzH9@9ShUczY7k($+hrkedzSC)`w)5hqqS#B_`7Hm1ia@@XXswKj)q{R~lnEnefMH?4!I9#Gz##6cMy<9$8T3Y&L zr(LTGP7p#4B%dMU$pmr`IXDDW1BdTwZ;)|qV^D3Bd~ev0|K28N)aTGpw}M0+9k)gk zsA+~w(8;$OZOm(uFRl}#(hpy1(l$=}JnPrLF(Z4tk}jVvoDm9p@&8yQht7SXse*=} z1?UKRgQr0fm;h!=T?K=^3lXu=s1KCBA^yB&-o&a?x5(TmzblG@TvxrnTu#S_IW!&( z+Q~R^Ib?(thAh1H2T9aWs@YsWtG_gBNB8~If`Gq3Xvp^Zjqf>T${}7j>nRfUo;`HU zKcS7APZ}({t1GHA5KY<2dEKONKlY>176c=Jh1N+}S{@%Bm_n?VMI~Nvx|8gy7{do> zOQU<4ooj#YVHga?&D^Qq$FNbP+qB<$v>InUhDWDiakp|FHappCPDLNQLn7U`oAEJe zdn9IZ-Bzp+1Zr31;Yhe?yL(SfdqvWSYjQ#D5!ifp=;yLLJ&}iVepobHC?rru3b?SB zEpLbEte?6SiS)3LHn-`OhN9DtKQ5McAa4z*$E9ny_FJ{Y8TPDC`40*!r`w>dt3_=1 zygupRjZ@{qDoSTilL01E(Fk{OayrQ<1=Bs+YtDDd7_6gWXn8JHJZ8ahI13(t*?X;9Is_;v7jZUs&VGh{ zI0*d(iAeRec`@gHyS_J)OCPw%pUa}~!EPaK{<%3J$PX^EP3A^7n)^hl4evfDK| gmp)*QpV-(wmU1tP|F)K(_=o`?FRW+P&%gfuAJS8+ssI20 diff --git a/app/src/main/res/drawable-xxhdpi/ic_video_detail_liked.png b/app/src/main/res/drawable-xxhdpi/ic_video_detail_liked.png index a9018f92f624627d2ca47ceeb48bd1c9d6df46ee..d62785af2e246bdfd48ef193aeb5f77615a9430f 100644 GIT binary patch delta 2489 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 diff --git a/app/src/main/res/layout/fragment_about.xml b/app/src/main/res/layout/fragment_about.xml index 25fa993acf..9bc7036ce2 100644 --- a/app/src/main/res/layout/fragment_about.xml +++ b/app/src/main/res/layout/fragment_about.xml @@ -166,7 +166,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" - android:text="抖音" + android:text="官方抖音" android:textColor="@color/title" android:textSize="17sp" /> diff --git a/app/src/main/res/layout/item_personal_fun_group.xml b/app/src/main/res/layout/item_personal_fun_group.xml index 386cd6eb4a..ee298db164 100644 --- a/app/src/main/res/layout/item_personal_fun_group.xml +++ b/app/src/main/res/layout/item_personal_fun_group.xml @@ -8,7 +8,7 @@ android:paddingLeft="18dp" android:paddingTop="16dp" android:paddingRight="16dp" - android:paddingBottom="22dp"> + android:paddingBottom="28dp">