>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



Erro com LocationManager


Prezado,

O projeto de VENDAS está com um erro no LOCATIONMANAGER quando invoca o método getLongitude() e getLatitude() .

Códigos para verificação:

*********************************
LOGCAT
*********************************


06-30 21:11:50.867: E/dalvikvm(30930): dvmPauseGc(AppLaunch) called - cookie=0x340d (f=0x1)
06-30 21:11:51.567: E/dalvikvm(30930): dvmResumeGc(0x340d, 0) called (f=0x1)
06-30 21:11:55.612: E/dalvikvm(30930): dvmPauseGc(AppLaunch) called - cookie=0x4693 (f=0x1)
06-30 21:11:55.917: E/dalvikvm(30930): dvmResumeGc(0x4693, 0) called (f=0x1)
06-30 21:11:59.047: D/AndroidRuntime(30930): Shutting down VM
06-30 21:11:59.047: W/dalvikvm(30930): threadid=1: thread exiting with uncaught exception (group=0x41729c08)
06-30 21:11:59.057: E/AndroidRuntime(30930): FATAL EXCEPTION: main
06-30 21:11:59.057: E/AndroidRuntime(30930): Process: br.com.daq.vendas_22, PID: 30930
06-30 21:11:59.057: E/AndroidRuntime(30930): java.lang.IllegalStateException: Could not execute method of the activity
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.view.View$1.onClick(View.java:3969)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.view.View.performClick(View.java:4640)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.view.View$PerformClick.run(View.java:19421)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.os.Handler.handleCallback(Handler.java:733)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.os.Handler.dispatchMessage(Handler.java:95)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.os.Looper.loop(Looper.java:136)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.app.ActivityThread.main(ActivityThread.java:5476)
06-30 21:11:59.057: E/AndroidRuntime(30930): at java.lang.reflect.Method.invokeNative(Native Method)
06-30 21:11:59.057: E/AndroidRuntime(30930): at java.lang.reflect.Method.invoke(Method.java:515)
06-30 21:11:59.057: E/AndroidRuntime(30930): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
06-30 21:11:59.057: E/AndroidRuntime(30930): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
06-30 21:11:59.057: E/AndroidRuntime(30930): at dalvik.system.NativeStart.main(Native Method)
06-30 21:11:59.057: E/AndroidRuntime(30930): Caused by: java.lang.reflect.InvocationTargetException
06-30 21:11:59.057: E/AndroidRuntime(30930): at java.lang.reflect.Method.invokeNative(Native Method)
06-30 21:11:59.057: E/AndroidRuntime(30930): at java.lang.reflect.Method.invoke(Method.java:515)
06-30 21:11:59.057: E/AndroidRuntime(30930): at android.view.View$1.onClick(View.java:3964)
06-30 21:11:59.057: E/AndroidRuntime(30930): ... 11 more
06-30 21:11:59.057: E/AndroidRuntime(30930): Caused by: java.lang.NullPointerException
06-30 21:11:59.057: E/AndroidRuntime(30930): at br.com.daq.curso.vendas_22.NovaVendaActivity.Salvar_Click(NovaVendaActivity.java:78)
06-30 21:11:59.057: E/AndroidRuntime(30930): ... 14 more
06-30 21:12:04.612: E/dalvikvm(30965): dvmPauseGc(AppLaunch) called - cookie=0x69bb (f=0x1)
06-30 21:12:04.852: E/dalvikvm(30965): dvmResumeGc(0x69bb, 0) called (f=0x1)


*************************
Codigo JAVA
*************************

package br.com.daq.curso.vendas_22;

import br.com.daq.vendas_22.R;
import android.widget.SimpleCursorAdapter;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Spinner;
import android.os.Build;
import android.util.Log;

.
.
.

public void Salvar_Click(View view){
//Ação de Salvar Venda
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
String provider = locationManager.getBestProvider(criteria, false);
Location location = locationManager.getLastKnownLocation(provider);
//**************************************
//Erro ao recuperar getLongitude, não passa adiante - LINHA 78
lo = location.getLongitude();
la = location.getLatitude();
//**************************************
//lo = 12.887878;
//la = 44.899777;

/*
SQLiteDatabase db = openOrCreateDatabase("vendas.db", Context.MODE_PRIVATE, null);

//Preparando para recuperador o item selecionado do SPINNER
Spinner spProdutos = (Spinner)findViewById(R.id.spProdutos);
SQLiteCursor dados = (SQLiteCursor)spProdutos.getAdapter().getItem(spProdutos.getSelectedItemPosition());

ContentValues ctv = new ContentValues();
ctv.put("produto", dados.getInt(0));
ctv.put("preco", dados.getDouble(2));
ctv.put("la", la);
ctv.put("lo", lo);

db.insert("vendas","_id", ctv);
db.close();
*/

}


Acresento que a ferramenta de desenvolvimento (ADT) exibe corretamente os métodos ou propriedades dos objetos à medida que se digita.



5 Respostas


Ola Delio...


Mas o la ta funcionando???




Olá, o erro é para os dois.
Ocorre tanto ao invocar o getLatitude ou getLongitude.
Depende de quem é chamado primeiro, não continua, sendo erro fatal que encerra a aplicação.




vc criou o projeto com Google APIs (Google Inc.) - API Level x??




Para o projeto Google APIs, Plataforma 2.2, Level 8.

A ferramenta de desenvolvimento auxilia bem, como outras, pois exibe as propriedades e métodos assim que o objeto e utilizado. Neste caso as variáveis "la" e "lo" exibem corretamente os métodos e propriedades disponíveis para ela, no entanto, na execução ocorre erro fatal na recuperação de getLatitude e getLongitude.




Delio...

veja esse topico aqui

http://rlsystem.com.br/forum/android/814-localizacao-do-celular#top