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

Как сохранить Service? - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Запись лога в отдельный файл http://www.cyberforum.ru/android-dev/thread1792191.html
Здравствуйте. Можете подсказать, как в приложение добавить возможность записи логов в отдельный файл, чтобы его потом можно было переслать другому человеку (например txt-файл)? Просто проблем возникает у сотрудника, работающего удаленно, а на имеющихся у меня устройствах все нормально и в логах чисто. Так как у меня нету прямого доступа к устройству, на котором некоторый функционал не...
Android Как отлавливать ошибку в приложении у пользователей Предположим что написал приложение. Отладил на все до чего ручки добрались, опубликовал. Приложение скачал Вася Пупкин, с непонятно каким девайсом и у него закономерно все падает. Естественно справедливые отзывы рейтинги и тд. Вопрос как я могу отлавливать ошибку в своем приложении у пользователя, с условием того что ошибка как правило возникает непредсказуемо. http://www.cyberforum.ru/android-dev/thread1792175.html
Android Скрыть часть web view за экран
Всем доброго времени суток. Вот чем я озадачился намедни, к примеру возьмём сайт твиттера, если подгрузить его в веб вью ну или открыть в хроме на девайсе, то при сколе вверх выезжает панелька (зарегистрироваться или войти). Можно ли как-то сдвинуть веб вью вверх, так скажем, "за пределы экрана", чтобы при скролле эта панелька не была видна и выезжала где-то там далеко. Ну или какой-то другой...
Android AlarmManager и TextView
Здравствуйте. Задача такая: есть AlarmManager и TextView. Как заставить AlarmManager отсчитывать время, заданное пользователем, и показывать это время в TextView?
Android Пропадает соединение с сервером http://www.cyberforum.ru/android-dev/thread1792108.html
Использую KryoNet Класс, который создает соединение с сервером, имплементирует Runnable, ибо нельзя в главном потоке создавать никаких соединений public class ServerConnection implements Runnable { public Client client; Request request; private ArrayList<TableData> tableDataList = new ArrayList<>(); public ArrayList<Note> getNotes(){ Note note;
Android Обновление БД на андроид, Масштабирование иконок Добрый день,уважаемые форумчане. При программировании на андроиде столкнулся с несколькими проблемами, а именно: 1. У меня в приложении используется БД SQLite, после того как я изменил БД , в приложении она не изменяется, если удалить приложение и заново запустить, то БД запускается уже новая, и так вопрос можно ли в коде на java прописать автоматическую очистку данных приложения, при первом... подробнее

Показать сообщение отдельно
alex-rudenkiy
 Аватар для alex-rudenkiy
5 / 5 / 0
Регистрация: 02.01.2013
Сообщений: 392

Как сохранить Service? - Android

10.08.2016, 18:47. Просмотров 96. Ответов 0
Метки (Все метки)

Подскажите пожалуйста, как сохранить Service, а точнее ссылку на Service и присоединённый из основного Activity в Service Callback? Это мне приходится делать из-за того что при смене ориентации экрана Activity создаётся заново и естественно все переменные обнуляются и ссылка на мой Service

Собственно вот фрагмент отвечающий за Service в Activity :

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
Intent intent;
@Override
protected void onStart() {
    super.onStart();
    intent = new Intent(this, Sservice.class);
    bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
}
 
@Override
protected void onStop() {
    super.onStop();
    if (mBound) {
        unbindService(mConnection);
        mBound = false;
    }
}
 
private ServiceConnection mConnection = new ServiceConnection() {
 
    @Override
    public void onServiceConnected(ComponentName className,
                                   IBinder service) {
        Sservice.LocalBinder binder = (Sservice.LocalBinder) service;
        mService = binder.getService();
        mBound = true;
        mService.setReciever(response);
    }
 
    @Override
    public void onServiceDisconnected(ComponentName arg0) {
        mBound = false;
    }
};
А это у меня код отвечающий за сохранение данных в Bundle для последующего извлечения при завершении поворота экрана.

Java
1
2
3
4
5
6
7
8
9
10
11
12
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);
    boolean saved = savedInstanceState.getBoolean("connected");
}
 
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
    savedInstanceState.putBoolean("connected",mService.connected);
    //savedInstanceState. Вот тут я хотел запихнуть в Bundle ссылку на сервис
    super.onSaveInstanceState(savedInstanceState);
}
Вот это у меня Callback срабатывающий из сервиса (на удивление рабочий) :

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sservice.ResponseCallback response;
 
@Override
protected void onCreate(Bundle savedInstanceState) {
 
    instance = this;
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);  
 
    response = new Sservice.ResponseCallback() {
        public void response(String response) {
 
            Log.i("Ура ура","Ok");
 
        }
    };
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru