Removed hardcoded screen orientation and redundant network state permission from manifest

This commit is contained in:
Arty Bishop committed 2021-04-14 18:31:57 +01:00
1 parent 7cfe44ed13
commit 046ec8ee8c
4 files changed
+12 -41

No files matched your search

-3
View File
@@ -3,7 +3,6 @@
package="com.rtbishop.look4sat">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<application
@@ -13,11 +12,9 @@
android:label="@string/app_name">
<activity
android:name=".ui.Look4SatActivity"
android:screenOrientation="portrait"
android:theme="@style/AppTheme.Splash">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
@@ -17,13 +17,15 @@
*/
package com.rtbishop.look4sat.ui
import android.content.pm.ActivityInfo
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.ui.setupWithNavController
import com.rtbishop.look4sat.R
import com.rtbishop.look4sat.utility.PrefsManager
import com.rtbishop.look4sat.databinding.ActivityMainBinding
import com.rtbishop.look4sat.utility.PrefsManager
import com.rtbishop.look4sat.utility.navigateSafe
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@@ -34,16 +36,16 @@ class Look4SatActivity : AppCompatActivity() {
lateinit var prefsManager: PrefsManager
override fun onCreate(savedInstanceState: Bundle?) {
requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
setTheme(R.style.AppTheme)
super.onCreate(savedInstanceState)
ActivityMainBinding.inflate(layoutInflater).apply {
setContentView(root)
val navHost = supportFragmentManager.findFragmentById(R.id.nav_host) as NavHostFragment
navBottom.setupWithNavController(navHost.navController)
if (prefsManager.isFirstLaunch()) {
prefsManager.setFirstLaunchDone()
navHost.navController.navigate(R.id.nav_dialog_splash)
}
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
val navHost = supportFragmentManager.findFragmentById(R.id.nav_host) as NavHostFragment
binding.navBottom.setupWithNavController(navHost.navController)
if (prefsManager.isFirstLaunch()) {
prefsManager.setFirstLaunchDone()
navHost.navController.navigateSafe(R.id.nav_dialog_splash)
}
}
}
@@ -17,11 +17,6 @@
*/
package com.rtbishop.look4sat.utility
import android.content.Context
import android.net.ConnectivityManager
import android.net.Network
import android.net.NetworkCapabilities
import android.net.NetworkRequest
import android.os.Bundle
import androidx.annotation.IdRes
import androidx.fragment.app.Fragment
@@ -33,10 +28,6 @@ import androidx.navigation.Navigator
import androidx.navigation.fragment.findNavController
import com.github.amsacode.predict4java.GroundStationPosition
import com.github.amsacode.predict4java.Satellite
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.callbackFlow
import java.util.concurrent.TimeUnit
import kotlin.math.max
import kotlin.math.min
@@ -111,22 +102,3 @@ fun <T> Fragment.getNavResult(@IdRes id: Int, key: String, onResult: (result: T)
}
})
}
@ExperimentalCoroutinesApi
fun Context.isNetworkAvailableFlow(): Flow<Boolean> = callbackFlow {
val callback = object : ConnectivityManager.NetworkCallback() {
override fun onAvailable(network: Network) {
offer(true)
}
override fun onLost(network: Network) {
offer(false)
}
}
val manager = getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
manager.registerNetworkCallback(NetworkRequest.Builder().run {
addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
build()
}, callback)
awaitClose { manager.unregisterNetworkCallback(callback) }
}
+1 -1
View File
@@ -5,7 +5,7 @@ buildscript {
material_version = '1.3.0'
constraint_layout_version = '2.0.4'
lifecycle_version = '2.3.1'
navigation_version = '2.3.4'
navigation_version = '2.3.5'
preference_version = '1.1.1'
room_version = '2.2.6'
hilt_version = '2.33-beta'