mirror of
https://github.com/TwidereProject/Twidere-Android
synced 2025-02-08 07:48:45 +01:00
removed implicit networ change receiver
This commit is contained in:
parent
6d86ce5b75
commit
991f34f6cd
@ -656,13 +656,6 @@
|
||||
android:resource="@xml/pickncrop__file_paths"/>
|
||||
</provider>
|
||||
|
||||
<receiver android:name=".receiver.ConnectivityStateReceiver">
|
||||
<intent-filter>
|
||||
<action
|
||||
android:name="android.net.conn.CONNECTIVITY_CHANGE"
|
||||
tools:ignore="BatteryLife"/>
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
<receiver android:name=".receiver.PowerStateReceiver">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
|
||||
|
@ -26,6 +26,7 @@ import android.content.pm.PackageManager
|
||||
import android.content.res.Configuration
|
||||
import android.database.sqlite.SQLiteDatabase
|
||||
import android.database.sqlite.SQLiteOpenHelper
|
||||
import android.net.ConnectivityManager
|
||||
import android.os.AsyncTask
|
||||
import android.support.multidex.MultiDex
|
||||
import com.bumptech.glide.Glide
|
||||
@ -49,6 +50,7 @@ import org.mariotaku.twidere.activity.MainActivity
|
||||
import org.mariotaku.twidere.activity.MainHondaJOJOActivity
|
||||
import org.mariotaku.twidere.constant.*
|
||||
import org.mariotaku.twidere.model.DefaultFeatures
|
||||
import org.mariotaku.twidere.receiver.ConnectivityStateReceiver
|
||||
import org.mariotaku.twidere.service.StreamingService
|
||||
import org.mariotaku.twidere.util.*
|
||||
import org.mariotaku.twidere.util.content.TwidereSQLiteOpenHelper
|
||||
@ -134,6 +136,7 @@ class TwidereApplication : Application(), Constants, OnSharedPreferenceChangeLis
|
||||
extraFeaturesService.appStarted()
|
||||
|
||||
registerActivityLifecycleCallbacks(activityTracker)
|
||||
registerReceiver(ConnectivityStateReceiver(), IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION))
|
||||
|
||||
listenExternalThemeChange()
|
||||
|
||||
|
@ -24,48 +24,19 @@ import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.net.ConnectivityManager
|
||||
import android.support.v4.net.ConnectivityManagerCompat
|
||||
import edu.tsinghua.hotmobi.HotMobiLogger
|
||||
import edu.tsinghua.hotmobi.UploadLogsService
|
||||
import edu.tsinghua.hotmobi.model.NetworkEvent
|
||||
import org.mariotaku.kpreferences.get
|
||||
import org.mariotaku.twidere.TwidereConstants.SHARED_PREFERENCES_NAME
|
||||
import org.mariotaku.twidere.constant.usageStatisticsKey
|
||||
import org.mariotaku.twidere.service.StreamingService
|
||||
import org.mariotaku.twidere.util.DebugLog
|
||||
import org.mariotaku.twidere.util.Utils
|
||||
import org.mariotaku.twidere.util.dagger.DependencyHolder
|
||||
|
||||
class ConnectivityStateReceiver : BroadcastReceiver() {
|
||||
|
||||
override fun onReceive(context: Context, intent: Intent) {
|
||||
DebugLog.d(RECEIVER_LOGTAG, String.format("Received Broadcast %s", intent), null)
|
||||
if (ConnectivityManager.CONNECTIVITY_ACTION != intent.action) return
|
||||
val prefs = context.getSharedPreferences(SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE)
|
||||
if (prefs[usageStatisticsKey]) {
|
||||
// BEGIN HotMobi
|
||||
val event = NetworkEvent.create(context)
|
||||
HotMobiLogger.getInstance(context).log(event)
|
||||
// END HotMobi
|
||||
}
|
||||
|
||||
val appContext = context.applicationContext
|
||||
val cm = appContext.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
||||
val isNetworkMetered = ConnectivityManagerCompat.isActiveNetworkMetered(cm)
|
||||
val holder = DependencyHolder.get(context)
|
||||
holder.mediaPreloader.isNetworkMetered = isNetworkMetered
|
||||
val isCharging = Utils.isCharging(appContext)
|
||||
if (!isNetworkMetered && isCharging) {
|
||||
val currentTime = System.currentTimeMillis()
|
||||
val lastSuccessfulTime = HotMobiLogger.getLastUploadTime(appContext)
|
||||
if (currentTime - lastSuccessfulTime > HotMobiLogger.UPLOAD_INTERVAL_MILLIS) {
|
||||
appContext.startService(Intent(appContext, UploadLogsService::class.java))
|
||||
}
|
||||
}
|
||||
StreamingService.startOrStopService(appContext)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
private const val RECEIVER_LOGTAG = "TwidereConnectivity"
|
||||
}
|
||||
}
|
||||
|
@ -7,5 +7,4 @@
|
||||
<!-- Config for home screen -->
|
||||
<bool name="home_tab_has_multiple_columns">false</bool>
|
||||
|
||||
<bool name="support_new_document_intent">false</bool>
|
||||
</resources>
|
||||
|
@ -2,4 +2,5 @@
|
||||
<resources>
|
||||
<bool name="use_job_refresh_service">false</bool>
|
||||
<bool name="use_legacy_refresh_service">true</bool>
|
||||
<bool name="support_new_document_intent">false</bool>
|
||||
</resources>
|
Loading…
x
Reference in New Issue
Block a user