adding location autorisations

master
Bastien JACQUELIN 2 years ago
parent f26bafe1b5
commit fc2fdd3195

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetDropDown">
<targetSelectedWithDropDown>
<Target>
<type value="QUICK_BOOT_TARGET" />
<deviceKey>
<Key>
<type value="VIRTUAL_DEVICE_PATH" />
<value value="C:\Users\basti\.android\avd\Pixel_6_API_33.avd" />
</Key>
</deviceKey>
</Target>
</targetSelectedWithDropDown>
<timeTargetWasSelectedWithDropDown value="2023-04-09T09:14:52.574238Z" />
</component>
</project>

@ -1,13 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"> xmlns:tools="http://schemas.android.com/tools" >
<!-- Ajoutez cette ligne pour autoriser l'accès à la localisation -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- Ajoutez cette ligne pour autoriser l'accès à Internet --> <uses-feature android:name="android.hardware.location"
<uses-permission android:name="android.permission.INTERNET" /> android:required="false"/>
<application <application
android:allowBackup="true" android:allowBackup="true"
@ -31,5 +29,4 @@
</intent-filter> </intent-filter>
</activity> </activity>
</application> </application>
</manifest> </manifest>

@ -1,7 +1,8 @@
package fr.iut.cinecool.fragments package fr.iut.cinecool.fragments
import android.content.Context.LOCATION_SERVICE import android.Manifest
import android.location.LocationManager import android.app.Activity
import android.content.pm.PackageManager
import android.os.Bundle import android.os.Bundle
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import android.view.LayoutInflater import android.view.LayoutInflater
@ -9,16 +10,17 @@ import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.EditText import android.widget.EditText
import android.widget.ImageView import android.widget.ImageView
import androidx.core.content.ContextCompat.getSystemService import android.widget.Toast
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.findNavController
import fr.iut.cinecool.R import fr.iut.cinecool.R
import fr.iut.cinecool.databinding.FragmentLoginBinding import fr.iut.cinecool.databinding.FragmentLoginBinding
import fr.iut.cinecool.databinding.FragmentMoviesBinding
class LoginFragment : Fragment() { class LoginFragment : Fragment() {
private var locationManager : LocationManager? = null
private var _binding: FragmentLoginBinding? = null private var _binding: FragmentLoginBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun onCreateView( override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle? savedInstanceState: Bundle?
@ -28,14 +30,56 @@ class LoginFragment : Fragment() {
} }
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
//locationManager = this.context?.let { getSystemService(it,LOCATION_SERVICE) } as LocationManager?
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
val loginButton = view.findViewById<ImageView>(R.id.loginButton) val loginButton = view.findViewById<ImageView>(R.id.loginButton)
loginButton.setOnClickListener(){ loginButton.setOnClickListener(){
login() if (ContextCompat.checkSelfPermission(this.requireContext(),
Manifest.permission.ACCESS_FINE_LOCATION) !==
PackageManager.PERMISSION_GRANTED) {
if (ActivityCompat.shouldShowRequestPermissionRationale(
this.requireContext() as Activity,
Manifest.permission.ACCESS_FINE_LOCATION)) {
ActivityCompat.requestPermissions(
this.requireContext() as Activity,
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), 1)
} else {
ActivityCompat.requestPermissions(
this.requireContext() as Activity,
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), 1)
}
}
}
}
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>,
grantResults: IntArray) {
when (requestCode) {
1 -> {
if (grantResults.isNotEmpty() && grantResults[0] ==
PackageManager.PERMISSION_GRANTED
) {
if ((this.requireContext().let {
ContextCompat.checkSelfPermission(
it,
Manifest.permission.ACCESS_FINE_LOCATION
)
} == PackageManager.PERMISSION_GRANTED)) {
Toast.makeText(
this.requireContext(),
"Permission Granted",
Toast.LENGTH_SHORT
).show()
}
} else {
Toast.makeText(this.requireContext(), "Permission Denied", Toast.LENGTH_SHORT)
.show()
}
login()
return
}
} }
} }
fun login(){ fun login(){
val name = view?.findViewById<EditText>(R.id.name)?.text val name = view?.findViewById<EditText>(R.id.name)?.text
if (name != null) { if (name != null) {

Loading…
Cancel
Save