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

СМС менеджер или блокиратор СМС по содержимому - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Задать и получить размеры виджета http://www.cyberforum.ru/android-dev/thread1099346.html
Занялся виджетами и запутался... Подскажите пожалуйста КАК это сделать? В какую сторону копать? Пытаюсь рисовать виджет ВРУЧНУЮ, на канвасе. И... 1) Нужно получить размеры картинки в которой нужно рисовать. 2) Нужно задать несколько размеров виджетов для выбора юзером - 1х1, 1х2, 4х4... Где определяется? 3) Некоторые виджеты позволяют менять свой размер как сами, так и средствами...
Программирование Android При динамическом заполнении TableLayout происходит перекрытие соседних элементов Добрый день, имеется LinearLayout, включающий в себя: 1. LinearLayout с 4-мя TextView 2. TableLayout со ScrollView 3. LinearLayout с 4-мя Button Код XML: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout" android:layout_width="match_parent" http://www.cyberforum.ru/android-dev/thread1099306.html
Программирование Android Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Предыстория: Я пишу 3D игру и там соответственно нужно производить поворот тела в пространстве. нужно делать 2 поворота по горизонтали и по вертикали. Вот так должно быть , а сейчас у меня происходит вот так т.е. вращение происходит по углам Эйлера, а не так как я хочу. Это происходит потому что я произвожу 2 поворота Код Matrix.rotateM(mMVPMatrix, 0, yAngle, 0, 1, 0); ...
Программирование Android Оптимизация. Планшеты. Google Play
У кого получилось оптимизировать приложение для планшетов, что бы Google Play принял макет? У меня никак не получается! В манифесте запись сделал... <supports-screens android:xlargeScreens="true" android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:anyDensity="true" />
Программирование Android Обработка нажатий на 3D объекты http://www.cyberforum.ru/android-dev/thread1099144.html
Как обрабатывать нажатия по объемным моделям в LibGDX? Если работаете с OpenGl, напишите как там? Разбираться с 3D только начал, на wiki ничего, к сожалению, не нашел, заранее спасибо за любую помощь.
Программирование Android Сканер для Android Люди, подскажите ) Такой вопрос: думаю на диплом написать программу сканер на Андроид: делаешь снимок документа, и программка распознаёт текст и всё такое и сохраняет его в телефоне в документе WORD (чтобы на компьютере можно было текст и копировать и ридактировать..)??? насколько сложная задача? p/s. В программировании не силён...( либо может кто-нибудь что-нибудь предложит на диплом,... подробнее

Показать сообщение отдельно
name?
198 / 169 / 18
Регистрация: 01.06.2010
Сообщений: 371
Завершенные тесты: 1
18.02.2014, 13:37     СМС менеджер или блокиратор СМС по содержимому
я писал подобное приложение вот так:
перехватываем все сообщение нашей программой
Кликните здесь для просмотра всего текста
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
public class SmsReceiver extends BroadcastReceiver {
    private StringBuilder body = new StringBuilder();
    
    @Override
    public void onReceive(Context context, Intent intent) {
        Bundle extras = intent.getExtras();
        String strMsgSrc = "";
        String strMsgDate = "";
        if (extras != null) {
            Object[] smsextras = (Object[]) extras.get("pdus");
 
            for (int i = 0; i < smsextras.length; i++) {
                SmsMessage smsmsg = SmsMessage
                        .createFromPdu((byte[]) smsextras[i]);
 
                 body.append(smsmsg.getMessageBody().toString());
                 strMsgSrc = smsmsg.getOriginatingAddress();
                 strMsgDate =String.valueOf(smsmsg.getTimestampMillis());
 
            }
            Intent mIntent = new Intent(context, SmsService.class);
            mIntent.putExtra("body", body.toString());
            mIntent.putExtra("date", strMsgDate);
            mIntent.putExtra("address", strMsgSrc);
            context.startService(mIntent);
            abortBroadcast();
        }
 
    }
}

далее передаем все в сервис, там мы проверяем текст и думаем сохранять его нам или нет

Кликните здесь для просмотра всего текста
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
public class SmsService extends Service {
   private Context context;
   private String body;
   private String date;
   private String address;
   
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        context = getApplicationContext();
        body = intent.getExtras().getString("body");
        date =  intent.getExtras().getString("date");
        address = intent.getExtras().getString("address");
        new Thread(updateMessage).start();
        return START_STICKY;
    }
    
    private void showNotification(String message, String address) {
        Intent notificationIntent = new Intent(context, MessageActivity.class);
        notificationIntent.putExtra("number", address);
        notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
        NotificationCompat.Builder nb = new NotificationCompat.Builder(context)
                .setSmallIcon(R.drawable.small_icon)
                .setAutoCancel(true)
                .setTicker(message)
                .setContentText(message)
                .setContentIntent(
                        PendingIntent.getActivity(context, 0,
                                notificationIntent,
                                PendingIntent.FLAG_UPDATE_CURRENT))
                .setWhen(System.currentTimeMillis())
                .setContentTitle("CompressMe")
                .setDefaults(Notification.DEFAULT_SOUND);
 
        NotificationManager notificationManager = (NotificationManager) context
                .getSystemService(Context.NOTIFICATION_SERVICE);
        @SuppressWarnings("deprecation")
        Notification notification = nb.getNotification();
        notificationManager.notify(R.drawable.ic_launcher, notification);
    }
    
    public static void restoreSms(Context context,String address,String body, String date, String smsPath) {
        ContentValues values = new ContentValues();
        values.put("address", address);//sender name
        values.put("date", date);
        values.put("body", body);
        context.getContentResolver().insert(Uri.parse(smsPath), values);
    }
    
    
    
    
    Runnable updateMessage = new Runnable() {
        public void run() {
            Log.v("HANDLE", "update");
//if(isSave()){ поидее тут должна быть ваша проверка
            body = check(body);
            showNotification(body,address);
            restoreSms(context,address, body, date,SMS_INBOX);
        }
      };
    
    private String check(String body) {
        if(body.charAt(0) == '&'){
            return new Chiper().translateToRus(body);
        }
        return body;
    }
    
    @Override
    public IBinder onBind(Intent arg0) {
        return null;
    }
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru