mirror of
https://github.com/bitwarden/android.git
synced 2024-10-31 15:15:34 +03:00
update firebase messaging lib and implementation (#1383)
* update firebase messaging lib and implementation * update clean-fdroid script for updated firebase
This commit is contained in:
parent
c27da8e7c4
commit
faa6904ce3
5 changed files with 17 additions and 53 deletions
14
.github/scripts/android/clean-fdroid.ps1
vendored
14
.github/scripts/android/clean-fdroid.ps1
vendored
|
@ -30,16 +30,6 @@ $xml.Load($androidManifest);
|
||||||
$nsAndroid=New-Object System.Xml.XmlNamespaceManager($xml.NameTable);
|
$nsAndroid=New-Object System.Xml.XmlNamespaceManager($xml.NameTable);
|
||||||
$nsAndroid.AddNamespace("android", "http://schemas.android.com/apk/res/android");
|
$nsAndroid.AddNamespace("android", "http://schemas.android.com/apk/res/android");
|
||||||
|
|
||||||
$firebaseReceiver1=$xml.SelectSingleNode(`
|
|
||||||
"/manifest/application/receiver[@android:name='com.google.firebase.iid.FirebaseInstanceIdInternalReceiver']", `
|
|
||||||
$nsAndroid);
|
|
||||||
$firebaseReceiver1.ParentNode.RemoveChild($firebaseReceiver1);
|
|
||||||
|
|
||||||
$firebaseReceiver2=$xml.SelectSingleNode(`
|
|
||||||
"/manifest/application/receiver[@android:name='com.google.firebase.iid.FirebaseInstanceIdReceiver']", `
|
|
||||||
$nsAndroid);
|
|
||||||
$firebaseReceiver2.ParentNode.RemoveChild($firebaseReceiver2);
|
|
||||||
|
|
||||||
$xml.Save($androidManifest);
|
$xml.Save($androidManifest);
|
||||||
|
|
||||||
Write-Output "########################################"
|
Write-Output "########################################"
|
||||||
|
@ -56,6 +46,10 @@ $firebaseNode=$xml.SelectSingleNode(`
|
||||||
"/ns:Project/ns:ItemGroup/ns:PackageReference[@Include='Xamarin.Firebase.Messaging']", $ns);
|
"/ns:Project/ns:ItemGroup/ns:PackageReference[@Include='Xamarin.Firebase.Messaging']", $ns);
|
||||||
$firebaseNode.ParentNode.RemoveChild($firebaseNode);
|
$firebaseNode.ParentNode.RemoveChild($firebaseNode);
|
||||||
|
|
||||||
|
$daggerNode=$xml.SelectSingleNode(`
|
||||||
|
"/ns:Project/ns:ItemGroup/ns:PackageReference[@Include='Xamarin.Google.Dagger']", $ns);
|
||||||
|
$daggerNode.ParentNode.RemoveChild($daggerNode);
|
||||||
|
|
||||||
$safetyNetNode=$xml.SelectSingleNode(`
|
$safetyNetNode=$xml.SelectSingleNode(`
|
||||||
"/ns:Project/ns:ItemGroup/ns:PackageReference[@Include='Xamarin.GooglePlayServices.SafetyNet']", $ns);
|
"/ns:Project/ns:ItemGroup/ns:PackageReference[@Include='Xamarin.GooglePlayServices.SafetyNet']", $ns);
|
||||||
$safetyNetNode.ParentNode.RemoveChild($safetyNetNode);
|
$safetyNetNode.ParentNode.RemoveChild($safetyNetNode);
|
||||||
|
|
|
@ -82,7 +82,7 @@
|
||||||
<Version>1.5.3.2</Version>
|
<Version>1.5.3.2</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Firebase.Messaging">
|
<PackageReference Include="Xamarin.Firebase.Messaging">
|
||||||
<Version>71.1740.0</Version>
|
<Version>121.0.1</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.0.0" />
|
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.0.0" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.AppCompat" Version="1.1.0" />
|
<PackageReference Include="Xamarin.AndroidX.AppCompat" Version="1.1.0" />
|
||||||
|
@ -90,6 +90,7 @@
|
||||||
<PackageReference Include="Xamarin.AndroidX.CardView" Version="1.0.0" />
|
<PackageReference Include="Xamarin.AndroidX.CardView" Version="1.0.0" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.MediaRouter" Version="1.1.0" />
|
<PackageReference Include="Xamarin.AndroidX.MediaRouter" Version="1.1.0" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.Migration" Version="1.0.6" />
|
<PackageReference Include="Xamarin.AndroidX.Migration" Version="1.0.6" />
|
||||||
|
<PackageReference Include="Xamarin.Google.Dagger" Version="2.27.0" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.SafetyNet">
|
<PackageReference Include="Xamarin.GooglePlayServices.SafetyNet">
|
||||||
<Version>71.1600.0</Version>
|
<Version>71.1600.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
@ -113,7 +114,6 @@
|
||||||
<Compile Include="Effects\FixedSizeEffect.cs" />
|
<Compile Include="Effects\FixedSizeEffect.cs" />
|
||||||
<Compile Include="Effects\SelectableLabelEffect.cs" />
|
<Compile Include="Effects\SelectableLabelEffect.cs" />
|
||||||
<Compile Include="Effects\TabBarEffect.cs" />
|
<Compile Include="Effects\TabBarEffect.cs" />
|
||||||
<Compile Include="Push\FirebaseInstanceIdService.cs" />
|
|
||||||
<Compile Include="Push\FirebaseMessagingService.cs" />
|
<Compile Include="Push\FirebaseMessagingService.cs" />
|
||||||
<Compile Include="Receivers\ClearClipboardAlarmReceiver.cs" />
|
<Compile Include="Receivers\ClearClipboardAlarmReceiver.cs" />
|
||||||
<Compile Include="Receivers\RestrictionsChangedReceiver.cs" />
|
<Compile Include="Receivers\RestrictionsChangedReceiver.cs" />
|
||||||
|
|
|
@ -40,20 +40,6 @@
|
||||||
android:resource="@xml/filepaths" />
|
android:resource="@xml/filepaths" />
|
||||||
</provider>
|
</provider>
|
||||||
|
|
||||||
<receiver
|
|
||||||
android:name="com.google.firebase.iid.FirebaseInstanceIdInternalReceiver"
|
|
||||||
android:exported="false" />
|
|
||||||
<receiver
|
|
||||||
android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver"
|
|
||||||
android:exported="true"
|
|
||||||
android:permission="com.google.android.c2dm.permission.SEND">
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
|
|
||||||
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
|
|
||||||
<category android:name="com.x8bit.bitwarden" />
|
|
||||||
</intent-filter>
|
|
||||||
</receiver>
|
|
||||||
|
|
||||||
<meta-data android:name="android.max_aspect" android:value="2.1" />
|
<meta-data android:name="android.max_aspect" android:value="2.1" />
|
||||||
<meta-data android:name="android.content.APP_RESTRICTIONS" android:resource="@xml/app_restrictions" />
|
<meta-data android:name="android.content.APP_RESTRICTIONS" android:resource="@xml/app_restrictions" />
|
||||||
|
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
#if !FDROID
|
|
||||||
using Android.App;
|
|
||||||
using Android.Content;
|
|
||||||
using Bit.App.Abstractions;
|
|
||||||
using Bit.Core;
|
|
||||||
using Bit.Core.Abstractions;
|
|
||||||
using Bit.Core.Utilities;
|
|
||||||
using Firebase.Iid;
|
|
||||||
|
|
||||||
namespace Bit.Droid.Push
|
|
||||||
{
|
|
||||||
[Service]
|
|
||||||
[IntentFilter(new[] { "com.google.firebase.INSTANCE_ID_EVENT" })]
|
|
||||||
public class FirebaseInstanceIdService : Firebase.Iid.FirebaseInstanceIdService
|
|
||||||
{
|
|
||||||
public async override void OnTokenRefresh()
|
|
||||||
{
|
|
||||||
var storageService = ServiceContainer.Resolve<IStorageService>("storageService");
|
|
||||||
var pushNotificationService = ServiceContainer.Resolve<IPushNotificationService>("pushNotificationService");
|
|
||||||
await storageService.SaveAsync(Constants.PushRegisteredTokenKey, FirebaseInstanceId.Instance.Token);
|
|
||||||
await pushNotificationService.RegisterAsync();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
|
@ -1,7 +1,7 @@
|
||||||
#if !FDROID
|
#if !FDROID
|
||||||
using Android.App;
|
using Android.App;
|
||||||
using Android.Content;
|
|
||||||
using Bit.App.Abstractions;
|
using Bit.App.Abstractions;
|
||||||
|
using Bit.Core.Abstractions;
|
||||||
using Bit.Core.Utilities;
|
using Bit.Core.Utilities;
|
||||||
using Firebase.Messaging;
|
using Firebase.Messaging;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
|
@ -10,10 +10,19 @@ using Xamarin.Forms;
|
||||||
|
|
||||||
namespace Bit.Droid.Push
|
namespace Bit.Droid.Push
|
||||||
{
|
{
|
||||||
[Service]
|
[Service(Exported=false)]
|
||||||
[IntentFilter(new[] { "com.google.firebase.MESSAGING_EVENT" })]
|
[IntentFilter(new[] { "com.google.firebase.MESSAGING_EVENT" })]
|
||||||
public class FirebaseMessagingService : Firebase.Messaging.FirebaseMessagingService
|
public class FirebaseMessagingService : Firebase.Messaging.FirebaseMessagingService
|
||||||
{
|
{
|
||||||
|
public async override void OnNewToken(string token)
|
||||||
|
{
|
||||||
|
var storageService = ServiceContainer.Resolve<IStorageService>("storageService");
|
||||||
|
var pushNotificationService = ServiceContainer.Resolve<IPushNotificationService>("pushNotificationService");
|
||||||
|
|
||||||
|
await storageService.SaveAsync(Core.Constants.PushRegisteredTokenKey, token);
|
||||||
|
await pushNotificationService.RegisterAsync();
|
||||||
|
}
|
||||||
|
|
||||||
public async override void OnMessageReceived(RemoteMessage message)
|
public async override void OnMessageReceived(RemoteMessage message)
|
||||||
{
|
{
|
||||||
if (message?.Data == null)
|
if (message?.Data == null)
|
||||||
|
|
Loading…
Reference in a new issue