NativeScript / NativeScript/plugins
[Android] [@nativescript/geolocation] Cannot watch location. Call "enableLocationRequest" first
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- TypeScript
- Estrelas
- 206
- Forks
- 123
- Merge médio
- 2d 1h
- PRs com merge (30d)
- 1
Descrição
I call watchLocation properly after enableLocationRequest but I am getting Cannot watch location. Call "enableLocationRequest" first error message.
Other weird behavior:
- It seems even if I allow the location permission, it forgets and requests it again.
- the docs says watchLocation is now async in order to check for permissions before attempting to watch but this is meaningless this way, since still the callback sends the location, this part is very unclear, and I couldn't find any examples for v9
✔ Component nativescript has 8.8.2 version and is up to date.
✔ Component @nativescript/core has 8.8.6 version and is up to date.
✖ Component @nativescript/ios is not installed.
✔ Component @nativescript/android has 8.8.6 version and is up to date.
"@nativescript/geolocation": "^9.0.0",
Code:
Geolocation.enableLocationRequest(true, true).then(() => {
Geolocation.watchLocation(
location => {
console.log(location);
},
e => {
console.log('watchLocation ERROR:', e);
},
{
//Specifies desired accuracy in meters.
desiredAccuracy: CoreTypes.Accuracy.any,
updateDistance: 300,
updateTime: 10000,
minimumUpdateTime: 1000
}
).then(()=>{
console.log('WHAT IS THIS FOR?')
})
UPDATE:
Downgrading to 8.3.1 solved all the issues and everything is working. I am on API 35.
So this is clearly a bug with 9.0.0 or the documentation is inaccurate and I should do something differently.
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece reproduzindo o exemplo com @nativescript/geolocation 9.0.0 no Android API 35 e, em seguida, compare seu comportamento com o da versão 8.3.1. Verifique o fluxo de enableLocationRequest e watchLocation, incluindo a persistência da permissão; considera-se concluído quando o monitoramento funciona sem a mensagem incorreta e o comportamento assíncrono documentado está claro.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- android, typescript
- Domínio
- mobile-dev
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100