Форум программистов, компьютерный форум, киберфорум
Наши страницы

Неубиваемый Service Android - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Сохранение набранного в EditText текста при смене активити http://www.cyberforum.ru/android-dev/thread1833976.html
Добрый день, подскажите как сделать чтобы при смене активити текст в EditText не пропадал.
Программирование Android Google maps метод поиска фрагмента карт на разметке для разных версий андроид Столкнулся с такой проблемой. в андройде 6 работает один метод поиска фрагмента карт на разметке а в 5 и ранее - другой. //api 21+ mapFragment = (MapFragment)... http://www.cyberforum.ru/android-dev/thread1833898.html
Программирование Android Не работает обработчик выбора файла
Снова пытаюсь разобраться с AIDE на мобиле. Проблема в том, что не отрабатывает метод onItemSelected. Там хочу прочитать файл, путь к нему и папку, в которой он находится, но пока там не работают...
Программирование Android SearchView в ActionBar
Всем привет! Добавил в ActionBar фрагмента SearchView, но он не появляется, пустой ActionBar. С добавлением SearchView в ActionBar активити проблем нет. Видимо, я упускаю специфику фрагмента. ...
Программирование Android Permission Denial: receiving Intent http://www.cyberforum.ru/android-dev/thread1833482.html
Добрый вечер. Цель - после перезагрузки запускать Alarm, но он не запускается. System Process выдаёт вот это 10-24 13:16:04.460 477-487/system_process W/BroadcastQueue: Permission Denial:...
Программирование Android Связка ScrollView + Include + TableLayout Добрый день. Хочу реализовать основное меню с кнопками, небольшим текстом и логотипом. Для этого использую TableLayout. Для прокрутки по вертикали всех этих многочисленных кнопок подключаю... подробнее

Показать сообщение отдельно
shavuz
114 / 120 / 23
Регистрация: 29.01.2014
Сообщений: 596
28.10.2016, 18:19
щас пробую

Добавлено через 53 минуты
так.. вещи о которых забыли. прописать в манифесте разрешения и сервис
XML
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
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.batteryservice">
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
 
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <service
            android:name=".BatteryService"
            android:label="@string/app_name">
        </service>
        <receiver android:name=".RestartReceiver">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>
    </application>
 
</manifest>

вот остальной проект. вроде работает:классы мейн, сервис и ресивер перезагрузки:
ресивер батарейки в сервисе
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
package com.batteryservice;
 
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
 
public class MainActivity extends AppCompatActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Intent intent = new Intent(this, BatteryService.class);
        startService(intent);
    }
}
 
 
package com.batteryservice;
 
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
 
public class RestartReceiver extends BroadcastReceiver
{
    public static final String LOG_TAG = RestartReceiver.class.getSimpleName();
    @Override
    public void onReceive(Context context, Intent intent)
    {
        Log.i(LOG_TAG, "Receiver BOOT_COMPLETED");
        Intent i = new Intent(context, BatteryService.class);
        context.startService(i);
    }
}
package com.batteryservice;
 
import android.app.Notification;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.os.IBinder;
import android.support.annotation.Nullable;
import android.support.v4.app.NotificationCompat;
 
 
public class BatteryService extends Service
{
    private static final int DEFAULT_NOTIFICATION_ID = 101;
 
    @Override
    public void onCreate()
    {
        super.onCreate();
        this.registerReceiver(this.mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
    }
 
    @Override
    public int onStartCommand(Intent intent, int flags, int startId)
    {
        return START_STICKY;
    }
 
    @Nullable
    @Override
    public IBinder onBind(Intent intent)
    {
        return null;
    }
 
    BroadcastReceiver mBatteryInfoReceiver = new BroadcastReceiver()
    {
        @Override
        public void onReceive(Context context, Intent intent)
        {
            int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
            int chargeState = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
 
            int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
            boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
                    status == BatteryManager.BATTERY_STATUS_FULL;
 
 
            switch (chargeState)
            {
                case BatteryManager.BATTERY_STATUS_CHARGING:
 
                    if (isCharging)
                    {
 
                        NotificationCompat.Builder builder = new NotificationCompat.Builder(BatteryService.this)
                                .setContentTitle("Charging...")
                                .setContentText("Battery level is: " + Integer.toString(level))
                                .setSmallIcon(android.R.drawable.stat_notify_chat);
 
                        Notification notification = builder.build();
                        notification.defaults |= Notification.DEFAULT_VIBRATE;
                        notification.defaults |= Notification.DEFAULT_SOUND;
                        startForeground(DEFAULT_NOTIFICATION_ID, notification);
 
                    }
                    break;
 
                case BatteryManager.BATTERY_STATUS_FULL:
 
                    break;
                case BatteryManager.BATTERY_STATUS_DISCHARGING:
                    break;
            }
        }
    };
 
    @Override
    public void onDestroy()
    {
        super.onDestroy();
        this.unregisterReceiver(this.mBatteryInfoReceiver);
    }
 
}
обратите внимание что у вас посылаются пушки только когда заряжается.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.