почему возникает ошибка, когда я добавляю backendless сервис для android в манифест? - PullRequest
0 голосов
/ 13 апреля 2019

, когда я добавляю бэкэнд-сервис для Android в манифесте, как показано в настройке push-уведомлений на бэкэнд-сайте, это выдает мне ошибку и красную линию под первым служебным словом

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.peter.notify">


<uses-permission android:name="android.permission.INTERNET" />

<service android:name="com.backendless.push.BackendlessFCMService">
    <intent-filter>
        <action android:name="com.google.firebase.MESSAGING_EVENT" />
    </intent-filter>
</service>

<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">
    <activity android:name=".LoginPage">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER"     />
        </intent-filter>
    </activity>
    <activity android:name=".RegisterPage" />
    <activity android:name=".MoviesPage" />

</application>

what I expect my app connect with my backendless account, but what I     get it this error 

(Android resource linking failed
Output:  C:\Users\PETER\AndroidStudioProjects\Notify\app\build    \intermediates\instant_run_merged_manifests\debug\processDebugManifest  \instant-run\AndroidManifest.xml:19: error: unexpected element <service>    found in <manifest>.

Command: C:\Users\PETER\.gradle\caches\transforms-1\files-    1.1\aapt2-3.2.1-4818971-windows.jar\efc3d32fb9b1857254999d94d3fe990e\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
    C:\Users\PETER\AppData\Local\Android\Sdk\platforms\android-   28\android.jar\
    --manifest\
    C:\Users\PETER\AndroidStudioProjects\Notify\app\build\intermediates\instant_run_merged_manifests\debug\processDebugManifest\instant-run\AndroidManifest.xml\
    -o\
    C:\Users\PETER\AndroidStudioProjects\Notify\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
    -R\
    @C:\Users\PETER\AndroidStudioProjects\Notify\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
    --auto-add-overlay\
    --java\
    C:\Users\PETER\AndroidStudioProjects\Notify\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
    --custom-package\
    com.example.peter.notify\
    -0\
    apk\
    --preferred-density\
    xxhdpi\
    --output-text-symbols\
    C:\Users\PETER\AndroidStudioProjects\Notify\app\build\intermediates\symbols\debug\R.txt\
    --no-version-vectors

Демон: AAPT2 aapt2-3.2.1-4818971-windows Демон # 0)

Ответы [ 3 ]

2 голосов
/ 13 апреля 2019
Тег

<service> должен содержаться в теге <application> в соответствии с документацией .

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.peter.notify">


<uses-permission android:name="android.permission.INTERNET" />

<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">
    <activity android:name=".LoginPage">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER"     />
        </intent-filter>
    </activity>
    <activity android:name=".RegisterPage" />
    <activity android:name=".MoviesPage" />

    <service android:name="com.backendless.push.BackendlessFCMService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

</application>

РЕДАКТИРОВАТЬ:

Убедитесь, что у вас есть эти зависимости в вашемbuild.gradle файл и ваш проект синхронизируется с файлами Gradle.

implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.google.firebase:firebase-messaging:17.6.0'
implementation 'com.backendless:backendless:5.2.4'
1 голос
/ 13 апреля 2019

Ваша сервисная декларация находится не в том месте.Он должен быть ниже <application/>, на том же уровне, что и ваша деятельность.

0 голосов
/ 13 апреля 2019

Объявление службы (BackendlessFCMService) под тегом приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...