mirror of https://github.com/tuskyapp/Tusky.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.9 KiB
61 lines
1.9 KiB
package com.keylesspalace.tusky; |
|
|
|
import android.content.Context; |
|
import android.content.SharedPreferences; |
|
|
|
import com.google.firebase.iid.FirebaseInstanceId; |
|
import com.google.firebase.iid.FirebaseInstanceIdService; |
|
|
|
import okhttp3.ResponseBody; |
|
import retrofit2.Call; |
|
import retrofit2.Callback; |
|
import retrofit2.Response; |
|
import retrofit2.Retrofit; |
|
|
|
public class MyFirebaseInstanceIdService extends FirebaseInstanceIdService { |
|
|
|
private TuskyAPI tuskyAPI; |
|
|
|
protected void createTuskyAPI() { |
|
Retrofit retrofit = new Retrofit.Builder() |
|
.baseUrl(getString(R.string.tusky_api_url)) |
|
.build(); |
|
|
|
tuskyAPI = retrofit.create(TuskyAPI.class); |
|
} |
|
|
|
@Override |
|
public void onTokenRefresh() { |
|
createTuskyAPI(); |
|
|
|
String refreshedToken = FirebaseInstanceId.getInstance().getToken(); |
|
SharedPreferences preferences = getSharedPreferences(getString(R.string.preferences_file_key), Context.MODE_PRIVATE); |
|
String accessToken = preferences.getString("accessToken", null); |
|
String domain = preferences.getString("domain", null); |
|
|
|
if (accessToken != null && domain != null) { |
|
tuskyAPI.unregister("https://" + domain, accessToken).enqueue(new Callback<ResponseBody>() { |
|
@Override |
|
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) { |
|
|
|
} |
|
|
|
@Override |
|
public void onFailure(Call<ResponseBody> call, Throwable t) { |
|
|
|
} |
|
}); |
|
tuskyAPI.register("https://" + domain, accessToken, refreshedToken).enqueue(new Callback<ResponseBody>() { |
|
@Override |
|
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) { |
|
|
|
} |
|
|
|
@Override |
|
public void onFailure(Call<ResponseBody> call, Throwable t) { |
|
|
|
} |
|
}); |
|
} |
|
} |
|
}
|
|
|