Firebase-android-sdk: /data/user/0/com.google.android.apps.messaging/files/httpft_pending (No such file or directory)

Created on 23 Apr 2020  路  11Comments  路  Source: firebase/firebase-android-sdk

[READ] Step 1: Are you in the right place?

Issues filed here should be about bugs in __the code in this repository__.
If you have a general question, need help debugging, or fall into some
other category use one of these other channels:

  • For general technical questions, post a question on StackOverflow
    with the firebase tag.
  • For general Firebase discussion, use the firebase-talk
    google group.
  • For help troubleshooting your application that does not fall under one
    of the above categories, reach out to the personalized
    Firebase support channel.

[REQUIRED] Step 2: Describe your environment

[REQUIRED] Step 3: Describe the problem

Hi - I ran into something interesting with this particular issue, and wondering if this might sound like a possible proguard issue that makes it not possible to detect certain models within Firebase?

I am able to receive push notifications from a server that is hooked into our Firebase console in debug, but not in release without setting debuggable to true.

I've also validated that I am indeed successfully generating an Firebase instance id and having that token registered (see more below).

I've tried the following combinations:

Does not work

 release {
            minifyEnabled true
            shrinkResources true
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            ...
        }

Does work

 release {
            debuggable true
            minifyEnabled true
            shrinkResources true
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            ...
        }

Does not work

 release {
            minifyEnabled false
            shrinkResources false
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            ...
        }

Does work

 release {
            debuggable true
            minifyEnabled false
            shrinkResources false
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            ...
        }

As a sanity check, I've downloaded the latest version of google.services from our console, and I've also tried experimenting with different versions for firebase, and AGP.

I printed out some Toasts/Alerts/Notifications to confirm that the release is in fact, generating a Firebase instance id and registering the new token.

Before | After
-- | --
before | after

However, nothing occurs for onMessageReceived.

Steps to reproduce:

One could follow the steps to produce any UI components printing out subscriptions, generated Id's etc. when accessing Firebase instances for generating ids, subscribing to topics.

I am able to successfully receive a notification message from the console itself on release (no debuggable). But still not the push notifications from the Heroku web app we've hooked into our console.

Relevant Code:

Added the following to see if I would be able to detect anything here:

override fun onMessageReceived(remoteMessage: RemoteMessage) {
        showNotification("", "Notification received", "$remoteMessage")
        val notification = remoteMessage.notification
        val topic = if (remoteMessage.data.isEmpty()) { 
            remoteMessage.from?.let { getConferenceId(it) } ?: ""
        } else {
            remoteMessage.data[EXTRA_CONFERENCE_ID] ?: ""
        }
        logger.log(TAG, "Received push notification from topic $topic: ${notification?.title} |  ${notification?.body}")

        showNotification(topic, notification?.title ?: "", notification?.body ?: "")
    }

Where showNotification creates a notification, but we never actually hit that point in here. I know that release is successful in calling onNewToken:

 override fun onNewToken(token: String) {
        super.onNewToken(token)
        logger.log(TAG, "Token received.")
        showNotification("", "Token received", "Received")
    }
messaging closed-by-bot needs-info no-recent-activity

All 11 comments

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

Some good news - I've determined that the original issue had to do with ensuring the SHA key is properly set up, but I was wondering what this is about:

2020-04-23 17:41:47.095 9855-9878/? V/FA: App measurement enabled for app package, google app id: com.fortysevendeg.android.scaladays, 1:335759072866:android:bbcec926f99aa4df
2020-04-23 17:41:47.149 3305-7958/? E/CarrierServices: [505] iez.getFile: File not found.: /data/user/0/com.google.android.apps.messaging/files/httpft_pending (No such file or directory)
        java.io.FileInputStream.open0(Native Method)
        java.io.FileInputStream.open(FileInputStream.java:231)
        java.io.FileInputStream.<init>(FileInputStream.java:165)
        android.app.ContextImpl.openFileInput(ContextImpl.java:560)
        android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
        iez.getFile(SourceFile:20)
        com.google.android.apps.messaging.rcsmigration.RcsStateProvider.buildRcsState(SourceFile:136)
        com.google.android.apps.messaging.rcsmigration.RcsStateProvider.getRcsState(SourceFile:6)
        com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:10)
        com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
        android.os.Binder.execTransact(Binder.java:731)

Likewise:

2020-04-23 18:16:22.238 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
2020-04-23 18:16:22.239 3305-4083/? W/RcsProvisioning: java.io.FileNotFoundException: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
        at java.io.FileInputStream.open0(Native Method)
        at java.io.FileInputStream.open(FileInputStream.java:231)
        at java.io.FileInputStream.<init>(FileInputStream.java:165)
        at android.app.ContextImpl.openFileInput(ContextImpl.java:560)
        at android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
        at ion.a(SourceFile:2)
        at idl.a(SourceFile:4)
        at idm.a(SourceFile:7)
        at com.google.android.apps.messaging.rcsmigration.RcsStateProvider.onMigrationComplete(SourceFile:27)
        at com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:14)
        at com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
        at android.os.Binder.execTransact(Binder.java:731)
2020-04-23 18:16:22.498 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)

@ahinchman1 Have you been able to figure out what's going on with the E/CarrierServices: [505] iez.getFile: File not found.: /data/user/0/com.google.android.apps.messaging/files/httpft_pending (No such file or directory)?

I have this exact same error in my logcat.

I'm seeing this issue on the emulator as well now, and I'm not receiving messages any more.

I had an old emulator that worked and I had to remove and recreate one.
The new one has the error in logcat and doesn't receive any messages.

I tried sending messages both through the console and through code (and through code I got a response link as well).

I also tried adding the debuggable true to build.gradle (with restart and reinstall), but it still didn't work and the error appears again and again.

Any idea how to solve it?

My exact log:

05-29 17:51:29.673  4562  4562 V BugleAction: no RCS because we're not registered
05-29 17:51:29.674  3414  3852 W CarrierServices: [206] bmc.a: No config URL. RCS will be disabled!
05-29 17:51:29.674  4562  4562 I BugleRcs: RcsAvailability ACS url: null
05-29 17:51:29.771  7689  7722 D NetworkSecurityConfig: No Network Security Config specified, using platform default
05-29 17:51:29.775  4562  6659 D RcsProvisioning: No backup token found
05-29 17:51:29.775  4562  6659 D RcsProvisioning: Clearing backup token
05-29 17:51:29.775  4562  6659 D RcsProvisioning: Exception while getting subscriber Id. Using default
05-29 17:51:29.806  4562  6659 I CarrierServices: [394] RcsStateProvider.onMigrationComplete: Deleted transfers file: false
05-29 17:51:29.809  4562  6659 W RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
05-29 17:51:29.809  4562  6659 W RcsProvisioning: java.io.FileNotFoundException: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at java.io.FileInputStream.open0(Native Method)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at java.io.FileInputStream.open(FileInputStream.java:231)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at java.io.FileInputStream.<init>(FileInputStream.java:165)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at android.app.ContextImpl.openFileInput(ContextImpl.java:560)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at ion.a(SourceFile:2)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at idl.a(SourceFile:4)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at idm.a(SourceFile:7)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at iez.buildConferencesFileName(SourceFile:30)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at com.google.android.apps.messaging.rcsmigration.RcsStateProvider.onMigrationComplete(SourceFile:48)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:14)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
05-29 17:51:29.809  4562  6659 W RcsProvisioning:       at android.os.Binder.execTransact(Binder.java:731)
05-29 17:51:29.809  4562  6659 D RcsProvisioning: Retrieving backup token
05-29 17:51:29.809  4562  6659 D RcsProvisioning: Exception while getting subscriber Id. Using default

Some good news - I've determined that the original issue had to do with ensuring the SHA key is properly set up, but I was wondering what this is about:

2020-04-23 17:41:47.095 9855-9878/? V/FA: App measurement enabled for app package, google app id: com.fortysevendeg.android.scaladays, 1:335759072866:android:bbcec926f99aa4df
2020-04-23 17:41:47.149 3305-7958/? E/CarrierServices: [505] iez.getFile: File not found.: /data/user/0/com.google.android.apps.messaging/files/httpft_pending (No such file or directory)
      java.io.FileInputStream.open0(Native Method)
      java.io.FileInputStream.open(FileInputStream.java:231)
      java.io.FileInputStream.<init>(FileInputStream.java:165)
      android.app.ContextImpl.openFileInput(ContextImpl.java:560)
      android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
      iez.getFile(SourceFile:20)
      com.google.android.apps.messaging.rcsmigration.RcsStateProvider.buildRcsState(SourceFile:136)
      com.google.android.apps.messaging.rcsmigration.RcsStateProvider.getRcsState(SourceFile:6)
      com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:10)
      com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
      android.os.Binder.execTransact(Binder.java:731)

Likewise:

2020-04-23 18:16:22.238 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
2020-04-23 18:16:22.239 3305-4083/? W/RcsProvisioning: java.io.FileNotFoundException: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
        at java.io.FileInputStream.open0(Native Method)
        at java.io.FileInputStream.open(FileInputStream.java:231)
        at java.io.FileInputStream.<init>(FileInputStream.java:165)
        at android.app.ContextImpl.openFileInput(ContextImpl.java:560)
        at android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
        at ion.a(SourceFile:2)
        at idl.a(SourceFile:4)
        at idm.a(SourceFile:7)
        at com.google.android.apps.messaging.rcsmigration.RcsStateProvider.onMigrationComplete(SourceFile:27)
        at com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:14)
        at com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
        at android.os.Binder.execTransact(Binder.java:731)
2020-04-23 18:16:22.498 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)

2020-04-23 17:41:47.095 9855-9878/? V/FA: App measurement enabled for app package, google app id: com.fortysevendeg.android.scaladays, 1:335759072866:android:bbcec926f99aa4df

Some good news - I've determined that the original issue had to do with ensuring the SHA key is properly set up, but I was wondering what this is about:

2020-04-23 17:41:47.095 9855-9878/? V/FA: App measurement enabled for app package, google app id: com.fortysevendeg.android.scaladays, 1:335759072866:android:bbcec926f99aa4df
2020-04-23 17:41:47.149 3305-7958/? E/CarrierServices: [505] iez.getFile: File not found.: /data/user/0/com.google.android.apps.messaging/files/httpft_pending (No such file or directory)
      java.io.FileInputStream.open0(Native Method)
      java.io.FileInputStream.open(FileInputStream.java:231)
      java.io.FileInputStream.<init>(FileInputStream.java:165)
      android.app.ContextImpl.openFileInput(ContextImpl.java:560)
      android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
      iez.getFile(SourceFile:20)
      com.google.android.apps.messaging.rcsmigration.RcsStateProvider.buildRcsState(SourceFile:136)
      com.google.android.apps.messaging.rcsmigration.RcsStateProvider.getRcsState(SourceFile:6)
      com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:10)
      com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
      android.os.Binder.execTransact(Binder.java:731)

Likewise:

2020-04-23 18:16:22.238 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
2020-04-23 18:16:22.239 3305-4083/? W/RcsProvisioning: java.io.FileNotFoundException: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)
        at java.io.FileInputStream.open0(Native Method)
        at java.io.FileInputStream.open(FileInputStream.java:231)
        at java.io.FileInputStream.<init>(FileInputStream.java:165)
        at android.app.ContextImpl.openFileInput(ContextImpl.java:560)
        at android.content.ContextWrapper.openFileInput(ContextWrapper.java:202)
        at ion.a(SourceFile:2)
        at idl.a(SourceFile:4)
        at idm.a(SourceFile:7)
        at com.google.android.apps.messaging.rcsmigration.RcsStateProvider.onMigrationComplete(SourceFile:27)
        at com.google.android.ims.rcsmigration.IRcsStateProvider$Stub.dispatchTransaction(SourceFile:14)
        at com.google.android.aidl.BaseStub.onTransact(SourceFile:18)
        at android.os.Binder.execTransact(Binder.java:731)
2020-04-23 18:16:22.498 3305-4083/? W/RcsProvisioning: Failed to read configuration: /data/user/0/com.google.android.apps.messaging/files/rcsconfig (No such file or directory)

The logs seem to indicate that you have analytics enabled. 馃憤
I don't see a cause for concern. Please let us know if you are seeing a functional issue.

no RCS because we're not registered

If I had to guess, you may be using a version of the emulator that does not have play services. This SO post has details on how you can determine that.

If you have a hardware Android device, you may be able to validate whether you receive notifications on it to determine if the emulator is the issue.

@ashwinraghav I'm sure the emulator is the problem since I have another emulator that is still working (again, an older one).

Regarding play services: I'm aware that I need them, which is why I use an image with Google Apis. I admit I'm not sure about the difference between Google Apis and Play Services, but:

  • I need to change /etc/hosts and I need root (which isn't available using Play Services images)
  • Using an image without Play Services nor Google Apis will result in Firebase not generating a token (since it needs Play Services)
  • I'm printing the token on start, which is how I'm sure using the Google Apis image is with Play Services.

Also, the other emulator that is working is using the exact same image.


Hey @ahinchman1. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!

What? what kind of information is google-oss-bot referring to? I have a phone where the problem exist and is reproducible (on that phone only but still).

I also have logs that says there is no RCS, I just don't know how to find out why.
What more info is needed?


Hey @ahinchman1. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!


Since there haven't been any recent updates here, I am going to close this issue.

@ahinchman1 if you're still experiencing this problem and want to continue the discussion just leave a comment here and we are happy to re-open this.

Was this page helpful?
0 / 5 - 0 ratings