>

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 na aplicação android "unfortunately has ' Vendas ' stopped"


Rafael,

Estou iniciando o curso de android, estou fazendo o app de vendas mas sempre encontro esse erro "unfortunately has ' Vendas ' stopped", segue em anexo o print que tirei do erro, você poderia me ajudar ?


http://rlsystem.com.br/forum/disco/uploads/840a6c2b20e31cff2a00ecdb1b0e228e-erro android.png



5 Respostas


Ola Alef

poste seu codigo p gente analisar..




package com.example.vendas;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

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

StringBuilder sqlProdutos = new StringBuilder();
sqlProdutos.append("CREATE TABLE IF NOT EXISTS [produtos](");
sqlProdutos.append("[_id] INTEGER PRIMARY KEY AUTOINCREMENT,");
sqlProdutos.append("nome varchar(100), ");
sqlProdutos.append("preco DOUBLE (10,2));");
db.execSQL(sqlProdutos.toString());

db.execSQL("INSERT into produtos (nome,preco)values('Coca cola','3.50'");

StringBuilder sqlVendas = new StringBuilder();
sqlVendas.append("CREATE TABLE IF NOT EXISTS [vendas](");
sqlVendas.append("[_id] INTEGER PRIMARY KEY AUTOINCREMENT,");
sqlVendas.append("produto INTEGER, ");
sqlVendas.append("preco DOUBLE (10,2),");
sqlVendas.append("la DOUBLE (10,9),");
sqlVendas.append("lo DOUBLE (10,9));");
db.execSQL(sqlVendas.toString());

db.close();

}

public void NovaVenda_Click(View v){
startActivity(new Intent(getBaseContext(),NovaVendaActivity.class));
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}




package com.example.vendas;

import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v4.widget.SimpleCursorAdapter;
import android.view.View;
import android.widget.Button;
import android.widget.Spinner;

public class NovaVendaActivity extends Activity {

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.nova_venda);

Spinner spProdutos =(Spinner)findViewById(R.id.spProdutos);

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

Cursor cursor = db.rawQuery("SELECT * FROM produtos ORDER BY nome ASC", null);

String[] from = {"_id", "nome", "preco" };
int[] to = {R.id.txvID, R.id.txvNome, R.id.txvPreco};

SimpleCursorAdapter ad = new SimpleCursorAdapter(getBaseContext(), R.layout.spinner, cursor, from, to);

spProdutos.setAdapter(ad);

/*Button btnSalvar = (Button)findViewById(R.id.btnSalvar);
btnSalvar.setOnClickListener(new view.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}
});*/
}

public void Salvar_Click(View view){

}
}




parece q o problema esta nesta linha aqui

db.execSQL("INSERT into produtos (nome,preco)values('Coca cola','3.50'");

assim é o certo

db.execSQL("INSERT into produtos (nome,preco)values('Coca cola','3.50')");




Vou verificar, mas obrigado pelo apoio Andre