Не можете скомпилировать React собственное приложение с помощью Firebase Messaging? - PullRequest
0 голосов
/ 13 мая 2019

Я хочу отображать уведомление в моем приложении в фоновом режиме или когда я активен в приложении

Я могу получить токен и отправить его вручную в Console Firebase, и он отлично работает, как я вижу, Статус завершен, но приложение, которое я получил эту проблему

Я использую

response-native-fcm,

реагирует-нативный-firebase

Вот файл AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.khadamaty">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!-- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> -->
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.VIBRATE" />


    <meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@mipmap/ic_notif"/>


    <application
      android:name=".MainApplication"
      android:label="@string/app_name"
      android:icon="@mipmap/ic_launcher"
      android:roundIcon="@mipmap/ic_launcher_round"
      android:allowBackup="false"
      android:theme="@style/AppTheme">

        <meta-data android:name="com.google.firebase.messaging.default_notification_channel_id" android:value="my_default_channel"/>
        <service
        android:name=".java.MyFirebaseMessagingService"
        android:exported="false">
        <intent-filter>
        <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
        </service>
        <meta-data
          android:name="com.google.firebase.messaging.default_notification_color"
          android:resource="@color/colorAccent" />

          <meta-data
          android:name="com.google.firebase.messaging.default_notification_icon"
          android:resource="@drawable/ic_stat_ic_notification" />

       <meta-data
     android:name="com.google.android.maps.v2.API_KEY"
     android:value="AIzaSyBb825RsIEAkFwJKk4PEb12cTXASe9sX70"/>

      <activity
        android:name=".MainActivity"
        android:launchMode="singleTop"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
      </activity>
      <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />


    </application>

</manifest>

- Журнал ошибок

Android resource linking failed
  Output:  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:21: error: resource mipmap/ic_notif (aka com.khadamaty:mipmap/ic_notif) not found.
  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:78: error: resource color/colorAccent (aka com.khadamaty:color/colorAccent) not found.
  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:81: error: resource drawable/ic_stat_ic_notification (aka com.khadamaty:drawable/ic_stat_ic_notification) not found.
  error: failed processing manifest.

  Command: C:\Users\jit\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\eaad08a303d2763f912063e432550147\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
          C:\Users\jit\AppData\Local\Android\Sdk\platforms\android-28\android.jar\
          --manifest\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\
          -o\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
          -R\
          @D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
          --auto-add-overlay\
          --java\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
          --custom-package\
          com.khadamaty\
          -0\
          apk\
          --output-text-symbols\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\symbols\debug\R.txt\
          --no-version-vectors
  Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0
  Output:  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:21: AAPT: error: resource mipmap/ic_notif (aka com.khadamaty:mipmap/ic_notif) not found.

  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:78: AAPT: error: resource color/colorAccent (aka com.khadamaty:color/colorAccent) not found.

  D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:81: AAPT: error: resource drawable/ic_stat_ic_notification (aka com.khadamaty:drawable/ic_stat_ic_notification) not found.

  error: failed processing manifest.
  Command: C:\Users\jit\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\eaad08a303d2763f912063e432550147\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
          C:\Users\jit\AppData\Local\Android\Sdk\platforms\android-28\android.jar\
          --manifest\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\
          -o\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
          -R\
          @D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
          --auto-add-overlay\
          --java\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
          --custom-package\
          com.khadamaty\
          -0\
          apk\
          --output-text-symbols\
          D:\Last Year\Second\Graduation project\khadamati_app\android\app\build\intermediates\symbols\debug\R.txt\
          --no-version-vectors
  Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0

1 Ответ

0 голосов
/ 13 мая 2019

Сообщение об ошибке говорит, что вам не хватает изображений и цвета. Лучше добавь их.

Перейдите в папки /android/app/src/main/res/mipmap-* и создайте копию ic_launcher.png и назовите ее ic_notif.png. Также создайте копию в папках /android/app/src/main/res/drawable-* (создайте их, если они не существуют (drawable-mdpi, drawable-hdpi и т. Д.), Назовите копию значка ic_stat_ic_notification.png. Создайте файл /android/app/src/main/res/values/colors.xml и добавьте его как его содержимое:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorAccent">#FF0000</color>
</resources>

Это должно устранить ошибки. Вы, вероятно, пропустили некоторые этапы установки кода push-модуля.

Mipmap / Drawable объяснил

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