Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 220

Ошибка при запуске внешнего сервиса

07.04.2018, 12:09. Показов 982. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Делаю в Qt приложение под андроид. Сейчас решил попробовать Сделать сервис в андроид студио и запустить его с моего приложения, но получил ошибку.

Вот код сервиса:
Java
1
2
3
4
5
6
7
8
9
10
11
public class MyService extends Service {
    public MyService() {
        Log.d("MyService", "Starrrrrrrrrrrrrrrrrrrt");
    }
 
    @Override
    public IBinder onBind(Intent intent) {
        // TODO: Return the communication channel to the service.
        throw new UnsupportedOperationException("Not yet implemented");
    }
}
Манифест:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example2.admin.myservice">
 
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <service
            android:name=".MyService"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="my_my.service.example"/>
            </intent-filter>
        </service>
    </application>
 
    <uses-permission android:name="android.permission.INTERNET"/>
</manifest>
В андроид студио я делаю APK, копирую на смартфон, устанавливаю.
Затем запускать пытаюсь запустить с другого приложения:
Java
1
2
3
Intent  i = new Intent("my_my.service.example");
Log.i("MyActivity", i==null ? "error" : "OK");  // Здесь пишет OK
startService(i);
Ну и в результате получаю такую ошибку:
Кликните здесь для просмотра всего текста
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.securedoor.test/com.securedoor.test.MyActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.ComponentName android.content.Context.startService(and roid.content.Intent)' on a null object reference
at android.app.ActivityThread.performLaunch Activity(ActivityThread.java:2366)
at android.app.ActivityThread.handleLaunchA ctivity(ActivityThread.java:2515)
at android.app.ActivityThread.access$1000(A ctivityThread.java:154)
at android.app.ActivityThread$H.handleMessa ge(ActivityThread.java:1379)
at android.os.Handler.dispatchMessage(Handl er.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(Activity Thread.java:5571)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$Metho dAndArgsCaller.run(ZygoteInit.java:745)
at com.android.internal.os.ZygoteInit.main( ZygoteInit.java:635)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.ComponentName android.content.Context.startService(and roid.content.Intent)' on a null object reference
at android.content.ContextWrapper.startServ ice(ContextWrapper.java:591)
at com.securedoor.test.MyActivity.<init>(My Activity.java:3)
at java.lang.Class.newInstance(Native Method)
at android.app.Instrumentation.newActivity( Instrumentation.java:1068)
at android.app.ActivityThread.performLaunch Activity(ActivityThread.java:2356)
... 9 more

Подскажите, пожалуйста, в чем моя ошибка?
Спасибо!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.04.2018, 12:09
Ответы с готовыми решениями:

Как после старта сервиса сообщить init-процессу об успешном/безуспешном запуске сервиса?
Нужно при после старта сервиса сообщить init-процессу о статусе запуска сервиса, т.е. успешно или с ошибками, чтобы сервис знал, можно ли...

в чем ошибка при создание этого сервиса на андроиде?
всем привет! хотел повторить этот пример создания сервиса...

В чем может быть ошибка при вызове сервиса?
В чем может быть проблема при вызове сервиса? Изучаю service, и возник вопрос по-поводу, передачи данных между сервисом и активити. Нашел...

3
+1
345 / 178 / 53
Регистрация: 24.08.2010
Сообщений: 1,028
07.04.2018, 12:54
https://stackoverflow.com/ques... pplication
0
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 220
07.04.2018, 19:42  [ТС]
Спасибо за ссылку!
Я немножко протупил в манифесте, ведь имя сервиса должно включать название пакета (хотя если вначале указать точку, то имя само добавится). Сделал вот так:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example2.admin.myservice">
 
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <service
            android:name="com.example2.admin.myservice.MyService"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="com.example2.admin.myservice.MyService"/>
            </intent-filter>
 
        </service>
    </application>
    <uses-permission android:name="android.permission.INTERNET"/>
</manifest>
А запуск со стороннего приложения делать вот так:
Java
1
2
3
Intent intent = new Intent();
    intent.setComponent(new ComponentName("com.example2.admin.myservice", "com.example2.admin.myservice.MyService"));
    startService(intent);
Но блин, опять вылетает с ошибкой(((
0
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 220
13.04.2018, 18:56  [ТС]
Оказалось, проблема в том, что я запускал сервис в конструкторе, если делать в onCreate, то запускается нормально.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.04.2018, 18:56
Помогаю со студенческими работами здесь

Ошибка при запуске AsyncTask при нажатии на пункт ActionBar
Здравствуйте, почему при нажатии на пункт Action Bar'а вылетает ошибка? @Override public boolean onCreateOptionsMenu(Menu menu)...

Ошибка при запуске
При запуске приложения выводит ошибку: &quot;В приложении &quot;Saint switcher&quot; произошла ошибка&quot; в чем ошибка? Вот код package...

Ошибка при запуске
Здравствуйте. Возникает ошибка при вызове getLastKnownLocation.

Ошибка при запуске VM VB
помогите пожалуйста у меня внезапно перестала запускаться оракловская виртуалка с андроидом, которую я использовал как эмулятор, пишет...

Ошибка при запуске проекта
Здравствуйте, форумчане! Столкнулся с такой проблемой в Eclipse при запуске проекта на эмуляторе: ActivityManager: Error type 3 . В итоге...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru