>

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 ao criar uma nova venda, Unfortunately vendas has stoped


Olá pessoal, sou novo aqui no fórum, e estou com um pequeno problema, acredito eu. Estou fazendo o curso de Android, e na aula de cadastro de vendas usando o google maps, ao tentar cadastrar uma nova venda clicando no botão "salvar", aparece a mensagem Unfortunately, vendas has stopped. Alguém poderia me ajudar por favor.



12 Respostas


Ola Pablo ...

mostre seu codigo??




Estou com o mesmo problema. segue me código:


NovaVendaActivity.xml

package com.example.renatosouza.vendas_rlsystem;

/**
* Created by Renato.Souza on 30/12/2014.
*/
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteCursor;
import android.database.sqlite.SQLiteDatabase;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.SimpleCursorAdapter;
import android.widget.Spinner;

public class NovaVendaActivity extends ActionBarActivity implements LocationListener {

private double la;
private double lo;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.nova_venda);
//Recupera o Spinner
Spinner spProdutos = (Spinner)findViewById(R.id.spProdutos);
//Conecta ao banco
SQLiteDatabase db = openOrCreateDatabase("vendas.db", Context.MODE_PRIVATE, null);
//Executa a pesquina no banco
Cursor cursor = db.rawQuery("SELECT * FROM produtos ORDER BY nome ASC", null);
//Pega o resultado da pesquisa no banco
String[] from = {"_id", "nome","preco"};
int[] to = {R.id.txvid, R.id.txvNome, R.id.txvpreco};
//Joga os dados no spinner
SimpleCursorAdapter ad = new SimpleCursorAdapter(getBaseContext(), R.layout.spinner, cursor, from, to );

spProdutos.setAdapter(ad);

db.close();

}

public void Salvar_Click(View view){

LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
String provider = locationManager.getBestProvider(criteria, false);
Location location = locationManager.getLastKnownLocation(provider);
la = location.getLatitude();
lo = location.getLongitude();

//Conecta ao banco
SQLiteDatabase db = openOrCreateDatabase("vendas.db", Context.MODE_PRIVATE, null);

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);
}

@Override
public void onLocationChanged(Location location) {

}

@Override
public void onStatusChanged(String provider, int status, Bundle extras) {

}

@Override
public void onProviderEnabled(String provider) {

}

@Override
public void onProviderDisabled(String provider) {

}
}




Ola Renato

vc ta usando o celular para rodar a aplicacao??




e tambem poste o erro gerado




Olá, estou usando o emulador versão superior a 4.2.2 e também o Android Studio e não o Eclipse, tem algum problema nisso será?

Tentei rodar no celular, mas ele não aparece e quando rodo o screencast para compartilhar a tela o java bloqueia, sabe como desbloqueio isso, uso o java 8 sdk e

Segue código gerado pelo debug do Android Studio.



12-31 11:17:53.234 850-850/com.example.renatosouza.vendas_rlsystem E/AndroidRuntime%uFE55 FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not execute method of the activity
at android.view.View$1.onClick(View.java:3599)
at android.view.View.performClick(View.java:4204)
at android.view.View$PerformClick.run(View.java:17355)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at android.view.View$1.onClick(View.java:3594)
            at android.view.View.performClick(View.java:4204)
            at android.view.View$PerformClick.run(View.java:17355)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: invalid provider: null
at android.location.LocationManager.checkProvider(LocationManager.java:1594)
at android.location.LocationManager.getLastKnownLocation(LocationManager.java:1138)
at com.example.renatosouza.vendas_rlsystem.NovaVendaActivity.Salvar_Click(NovaVendaActivity.java:53)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at android.view.View$1.onClick(View.java:3594)
            at android.view.View.performClick(View.java:4204)
            at android.view.View$PerformClick.run(View.java:17355)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)




Ola Renato...

vc pode usar o android studio para fazer o curso

o android studio se tornou a ide oficial da google

tente colocar alguns log cat la no botao salvar p poder a gente ver onde esta o erro




Andre, como faço para colocar esse log cat no botao salvar?

Sou novato e não entendo muito.

Valeu




Andre, o logcat que você mencionou pra eu colocar. Seria marcar a bolinha vermelha ao lado de cada linha que quero debugar?

Abs




Esse foi o log gerado:


01-02 12:02:29.701 995-995/com.example.renatosouza.vendas_rlsystem I/Choreographer%uFE55 Skipped 48 frames! The application may be doing too much work on its main thread.
01-02 12:02:31.312 995-995/com.example.renatosouza.vendas_rlsystem I/Choreographer%uFE55 Skipped 117 frames! The application may be doing too much work on its main thread.
01-02 12:02:32.842 995-1000/com.example.renatosouza.vendas_rlsystem D/dalvikvm%uFE55 GC_CONCURRENT freed 110K, 8% free 2876K/3108K, paused 69ms 148ms, total 1240ms
01-02 12:02:34.662 995-995/com.example.renatosouza.vendas_rlsystem D/AndroidRuntime%uFE55 Shutting down VM
01-02 12:02:34.662 995-995/com.example.renatosouza.vendas_rlsystem W/dalvikvm%uFE55 threadid=1: thread exiting with uncaught exception (group=0x40a71930)
01-02 12:02:34.752 995-995/com.example.renatosouza.vendas_rlsystem E/AndroidRuntime%uFE55 FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not execute method of the activity
at android.view.View$1.onClick(View.java:3599)
at android.view.View.performClick(View.java:4204)
at android.view.View$PerformClick.run(View.java:17355)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at android.view.View$1.onClick(View.java:3594)
            at android.view.View.performClick(View.java:4204)
            at android.view.View$PerformClick.run(View.java:17355)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: invalid provider: null
at android.location.LocationManager.checkProvider(LocationManager.java:1594)
at android.location.LocationManager.getLastKnownLocation(LocationManager.java:1138)
at com.example.renatosouza.vendas_rlsystem.NovaVendaActivity.Salvar_Click(NovaVendaActivity.java:53)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at android.view.View$1.onClick(View.java:3594)
            at android.view.View.performClick(View.java:4204)
            at android.view.View$PerformClick.run(View.java:17355)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)
01-02 12:02:37.872 995-995/com.example.renatosouza.vendas_rlsystem I/Process%uFE55 Sending signal. PID: 995 SIG: 9
device not found




Segue download do meu projeto: https://sendspace.com/file/0bjdr5

Fiz igual o Rafael mostra no curso, não estou entendo o erro.

Ele diz que posso rodar num emulador com android superior ao 4 e estou rodando no 4.1




Ola Renato

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

vai resolver seu problema

e para entender o logcat

segue um outro link

http://andreleonis.blogspot.com.br/2015/01/log-cat.html




Valeu Andre. Vou testar e posto o resultado.

VALEUUUUU