JavaJens / TextSecure

A secure text messaging application for Android.
GNU General Public License v3.0
72 stars 9 forks source link

Update to v3.10.0 #75

Closed mimi89999 closed 8 years ago

schachmat commented 8 years ago

I got the following merge conflict, which I don't know how to resolve correctly. Maybe someone with more Android experience can help me out?

    <provider android:name=".providers.PartProvider"
              android:grantUriPermissions="true"
<<<<<<< HEAD
              android:authorities="${applicationId}.provider" />

    <provider android:name=".providers.MmsBodyProvider"
              android:grantUriPermissions="true"
              android:authorities="${applicationId}.provider.mms" />
=======
              android:exported="false"
              android:authorities="org.thoughtcrime.provider.securesms" />

    <provider android:name=".providers.MmsBodyProvider"
              android:grantUriPermissions="true"
              android:exported="false"
              android:authorities="org.thoughtcrime.provider.securesms.mms" />
>>>>>>> v3.10.0
JavaJens commented 8 years ago

I'd resolve it to the ${applicationId}. This makes it easier to install two versions in parallel

mimi89999 commented 8 years ago

I'd also resolve it to the ${applicationId} and commit the android:exported="false"

schachmat commented 8 years ago

Thanks, here you go: #76

mimi89999 commented 8 years ago

"${applicationId}.provider.securesms" I would keep "${applicationId}.provider".

JavaJens commented 8 years ago

@mimi89999 I wouldn't. Because in https://github.com/WhisperSystems/Signal-Android/blob/d543c0b36e477a8d7be555de48399aa02a397803/src/org/thoughtcrime/securesms/providers/MmsBodyProvider.java#L36 this is specified as such.

But reading over it again, we may run into an issue here, as afaik $applicationId is resolved to org.thoughtcrime.securesms, but the content uri for the provider now is org.thoughtcrime.provider.securesms. Thus ${applicationId}.provider.securesms would resolve to org.thoughtcrime.securesms.provider.securesms

So either we have to change the Providers or the applicationId?

mimi89999 commented 8 years ago

But AFAIK only values in AndroidManifest.xml are replaced...

mimi89999 commented 8 years ago

I see 3 options:

  1. Stop using ${applicationId}
  2. Resolve ${applicationId} to "org.thoughtcrime" and use ${applicationId} in all files (not only in manifest)
  3. Resolve ${applicationId} to "org.thoughtcrime.securesms" (current) and use ${applicationId} in all files.

In option 3 "securesms" is before "provider".

JavaJens commented 8 years ago

I think I'd actually go for 1. This would reduce the diff to upstream and I don't think anyone runs two instances in parallel anyway right?

mimi89999 commented 8 years ago

I'm not running two instances in parallel.

ton-io commented 8 years ago

me neither

mimi89999 commented 8 years ago

77

mimi89999 commented 8 years ago

@xmikos Could you please update LibreSignal in your repo?