Commit 045255d4 authored by Mygod's avatar Mygod

Fix races properly

parent d231ddee
...@@ -40,6 +40,7 @@ import androidx.appcompat.widget.TooltipCompat ...@@ -40,6 +40,7 @@ import androidx.appcompat.widget.TooltipCompat
import androidx.core.content.getSystemService import androidx.core.content.getSystemService
import androidx.core.os.bundleOf import androidx.core.os.bundleOf
import androidx.fragment.app.DialogFragment import androidx.fragment.app.DialogFragment
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.* import androidx.recyclerview.widget.*
import com.github.shadowsocks.aidl.TrafficStats import com.github.shadowsocks.aidl.TrafficStats
import com.github.shadowsocks.bg.BaseService import com.github.shadowsocks.bg.BaseService
...@@ -192,21 +193,17 @@ class ProfilesFragment : ToolbarFragment(), Toolbar.OnMenuItemClickListener { ...@@ -192,21 +193,17 @@ class ProfilesFragment : ToolbarFragment(), Toolbar.OnMenuItemClickListener {
if (item.host == "198.199.101.152") { if (item.host == "198.199.101.152") {
val builder = AdLoader.Builder(context, "ca-app-pub-9097031975646651/9333091620") val builder = AdLoader.Builder(context, "ca-app-pub-9097031975646651/9333091620")
builder.forUnifiedNativeAd { unifiedNativeAd -> builder.forUnifiedNativeAd { unifiedNativeAd ->
if (!isAdLoaded && isAttached) { if (!isAdLoaded && isAttached) lifecycleScope.launchWhenStarted {
try { // OnUnifiedNativeAdLoadedListener implementation.
// OnUnifiedNativeAdLoadedListener implementation. val adContainer = itemView.findViewById<LinearLayout>(R.id.ad_container)
val adContainer = itemView.findViewById<LinearLayout>(R.id.ad_container) val adView = layoutInflater.inflate(R.layout.ad_unified, adContainer,
val adView = layoutInflater.inflate(R.layout.ad_unified, adContainer, false) as UnifiedNativeAdView
false) as UnifiedNativeAdView populateUnifiedNativeAdView(unifiedNativeAd, adView)
populateUnifiedNativeAdView(unifiedNativeAd, adView)
adContainer.removeAllViews()
adContainer.removeAllViews() adContainer.addView(adView)
adContainer.addView(adView)
isAdLoaded = true
isAdLoaded = true
} catch (ex: IllegalStateException) {
// Ignore the adView layout exception
}
} }
} }
......
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