Форум программистов, компьютерный форум CyberForum.ru

В БД не записываются значения - Android

Войти
Регистрация
Восстановить пароль
 
Gr1pMaN
0 / 0 / 0
Регистрация: 22.02.2013
Сообщений: 5
22.02.2013, 18:26     В БД не записываются значения #1
Этот сервис обрабатывает поступившее сообщение.
sms_body_name и sms_body_text имеют нужные значения (строка 65 и 66), а вот в БД вообще ничего не записывается. Как исправить чтоб строки в бд добавлялись?

Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.os.IBinder;
 
public class SmsService extends Service {
 
    char[] mod;
    String sms_body_name;
    String sms_body_text;
    DBHelper dbHelper;
 
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
 
    private void showNotification(String sms_body_name, String sms_body_text) {
        PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
                new Intent(this, Main.class), 0);
        Context context = getApplicationContext();
        Notification.Builder builder = new Notification.Builder(context)
                .setContentTitle("Новое СМС" + sms_body_name)
                .setContentText(sms_body_text).setContentIntent(contentIntent)
                .setSmallIcon(R.drawable.ic_launcher).setAutoCancel(true);
        NotificationManager notificationManager = (NotificationManager) context
                .getSystemService(Context.NOTIFICATION_SERVICE);
        @SuppressWarnings("deprecation")
        Notification notification = builder.getNotification();
        notificationManager.notify(R.drawable.ic_launcher, notification);
    }
 
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        String sms_body = intent.getExtras().getString("sms_body");
        ValidSms(sms_body);
        showNotification(sms_body_name, sms_body_text);
        dbHelper = new DBHelper(this);
        ContentValues cv = new ContentValues();
        // Toast.makeText(this, sms_body_name, Toast.LENGTH_SHORT).show();
        SQLiteDatabase db = dbHelper.getWritableDatabase();
        cv.put("name", sms_body_name);
        cv.put("message", sms_body_text);
        db.insert("mytable", null, cv);
        db.close();
        // Toast.makeText(this, sms_body_text, Toast.LENGTH_SHORT).show();
        return START_STICKY;
    }
 
    private void ValidSms(String sms_body) {
        // TODO Auto-generated method stub
        int i1 = 0;
        int i2 = 0;
        mod = sms_body.toCharArray();
        // int arr = sms_body.length();
        i1 = sms_body.indexOf(":");
        i2 = sms_body.lastIndexOf(":");
        i2 = sms_body.lastIndexOf(":", i2 - 4);
        sms_body_name = String.copyValueOf(mod, 0, i1 - 1);
        sms_body_text = String.copyValueOf(mod, i1 + 2, i2 - i1 + 2);
    }
 
    class DBHelper extends SQLiteOpenHelper {
 
        public DBHelper(Context context) {
            // конструктор суперкласса
            super(context, "myDB", null, 1);
        }
 
        @Override
        public void onCreate(SQLiteDatabase db) {
            // TODO Auto-generated method stub
            db.execSQL("create table mytable ("
                    + "id integer primary key autoincrement," + "name text,"
                    + "message text" + ");");
        }
 
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            // TODO Auto-generated method stub
 
        }
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2013, 18:26     В БД не записываются значения
Посмотрите здесь:

Данные не записываются в файл Android
Android Данные не записываются в файл

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YAUHEN
146 / 128 / 6
Регистрация: 29.07.2008
Сообщений: 506
22.02.2013, 18:30     В БД не записываются значения #2
поидее если что то не так с sql - в лог должно выводить причину ошибки. посмотрите в логкате что выдаёт ваша прога в момент попытки записи. ещё можно проверить создаётся ли ваша база и если создаётся то как и с какими полями и таблицами.
Yandex
Объявления
22.02.2013, 18:30     В БД не записываются значения
Ответ Создать тему
Опции темы

Текущее время: 18:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru