Skip to content

Commit 5f29bb7

Browse files
manny-jimenezManny Jimenez
andauthored
Fad logs file provider (#2999)
* FAD Adding logging and fixing file provider * Fixing up files * Fixing Install Activity * Fixing Install Activity * Adding another log message * Fixing file provider * Fixing logging * Making log wrapper public * Making logging methods public * Fixing comma error * Cleaning code * Fixing llint * Making tests pass Co-authored-by: Manny Jimenez <[email protected]>
1 parent b0a78ba commit 5f29bb7

File tree

5 files changed

+29
-25
lines changed

5 files changed

+29
-25
lines changed

firebase-app-distribution/src/main/java/com/google/firebase/appdistribution/CheckForNewReleaseClient.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ AppDistributionReleaseInternal getNewReleaseFromClient(
132132
return retrievedNewRelease;
133133
} else {
134134
// Return null if retrieved new release is older or currently installed
135+
LogWrapper.getInstance().v(TAG + "New Release is older or is currently installed");
135136
return null;
136137
}
137138
} catch (NumberFormatException e) {
@@ -207,6 +208,7 @@ private boolean hasSameHashAsInstalledRelease(AppDistributionReleaseInternal new
207208
// TODO: Consider removing this when all returned releases have the efficient ApkHash
208209
String externalCodeHash =
209210
releaseIdentifierStorage.getExternalCodeHash(installedReleaseApkHash);
211+
LogWrapper.getInstance().v(TAG + "Defaulting to external codehash " + externalCodeHash);
210212
return externalCodeHash != null && externalCodeHash.equals(newRelease.getCodeHash());
211213
}
212214
// If the hash of the zipped APK for the retrieved newRelease is equal to the stored hash

firebase-app-distribution/src/main/java/com/google/firebase/appdistribution/FirebaseAppDistributionTesterApiClient.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,11 @@
1414

1515
package com.google.firebase.appdistribution;
1616

17-
import static android.content.ContentValues.TAG;
1817
import static com.google.firebase.appdistribution.FirebaseAppDistributionException.Status.AUTHENTICATION_FAILURE;
1918
import static com.google.firebase.appdistribution.FirebaseAppDistributionException.Status.NETWORK_FAILURE;
2019

2120
import android.content.Context;
2221
import android.content.pm.PackageManager;
23-
import android.util.Log;
2422
import androidx.annotation.NonNull;
2523
import com.google.android.gms.common.util.AndroidUtilsLight;
2624
import com.google.android.gms.common.util.Hex;
@@ -114,7 +112,7 @@ class FirebaseAppDistributionTesterApiClient {
114112
} finally {
115113
connection.disconnect();
116114
}
117-
115+
LogWrapper.getInstance().v("Zip hash for the new release " + newRelease.getApkHash());
118116
return newRelease;
119117
}
120118

@@ -219,13 +217,12 @@ private String getFingerprintHashForPackage(Context context) {
219217
hash = AndroidUtilsLight.getPackageCertificateHashBytes(context, context.getPackageName());
220218

221219
if (hash == null) {
222-
Log.e(TAG, "Could not get fingerprint hash for package: " + context.getPackageName());
223220
return null;
224221
} else {
225222
return Hex.bytesToStringUppercase(hash, /* zeroTerminated= */ false);
226223
}
227224
} catch (PackageManager.NameNotFoundException e) {
228-
Log.e(TAG, "No such package: " + context.getPackageName(), e);
225+
LogWrapper.getInstance().e(TAG + "No such package: " + context.getPackageName(), e);
229226
return null;
230227
}
231228
}

firebase-app-distribution/src/main/java/com/google/firebase/appdistribution/InstallActivity.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ protected void onCreate(@NonNull Bundle savedInstanceState) {
5252
Uri apkUri =
5353
FileProvider.getUriForFile(
5454
getApplicationContext(),
55-
getApplicationContext().getPackageName() + ".appdistro.fileprovider",
55+
getApplicationContext().getPackageName() + ".FirebaseAppDistributionFileProvider",
5656
apkFile);
5757
intent.setDataAndType(apkUri, APK_MIME_TYPE);
5858
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

firebase-app-distribution/src/main/java/com/google/firebase/appdistribution/LogWrapper.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@
1515
package com.google.firebase.appdistribution;
1616

1717
import android.util.Log;
18+
import androidx.annotation.NonNull;
1819

1920
/** Wrapper that handles Android logcat logging. */
20-
class LogWrapper {
21+
public class LogWrapper {
2122

2223
private static final String LOG_TAG = "FirebaseAppDistribution";
2324
private static LogWrapper instance;
2425

26+
@NonNull
2527
public static synchronized LogWrapper getInstance() {
2628
if (instance == null) {
2729
instance = new LogWrapper();
@@ -30,27 +32,27 @@ public static synchronized LogWrapper getInstance() {
3032
return instance;
3133
}
3234

33-
void d(String msg) {
35+
public void d(@NonNull String msg) {
3436
Log.d(LOG_TAG, msg);
3537
}
3638

37-
void v(String msg) {
39+
public void v(@NonNull String msg) {
3840
Log.v(LOG_TAG, msg);
3941
}
4042

41-
void i(String msg) {
43+
public void i(@NonNull String msg) {
4244
Log.i(LOG_TAG, msg);
4345
}
4446

45-
void w(String msg) {
47+
public void w(@NonNull String msg) {
4648
Log.w(LOG_TAG, msg);
4749
}
4850

49-
void e(String msg) {
51+
public void e(@NonNull String msg) {
5052
Log.e(LOG_TAG, msg);
5153
}
5254

53-
void e(String msg, Throwable tr) {
55+
public void e(@NonNull String msg, @NonNull Throwable tr) {
5456
Log.e(LOG_TAG, msg, tr);
5557
}
5658

firebase-app-distribution/src/main/java/com/google/firebase/appdistribution/internal/ReleaseIdentificationUtils.java

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
import android.content.Context;
1818
import android.content.pm.PackageInfo;
1919
import android.content.pm.PackageManager;
20-
import android.util.Log;
2120
import androidx.annotation.NonNull;
2221
import androidx.annotation.Nullable;
22+
import com.google.firebase.appdistribution.LogWrapper;
2323
import java.io.File;
2424
import java.io.IOException;
2525
import java.nio.ByteBuffer;
@@ -46,15 +46,15 @@ public static String extractInternalAppSharingArtifactId(@NonNull Context appCon
4646
}
4747
return packageInfo.applicationInfo.metaData.getString("com.android.vending.internal.apk.id");
4848
} catch (PackageManager.NameNotFoundException e) {
49-
Log.w(TAG, "Could not extract internal app sharing artifact ID");
49+
LogWrapper.getInstance().w(TAG + "Could not extract internal app sharing artifact ID");
5050
return null;
5151
}
5252
}
5353

5454
@Nullable
5555
public static String calculateApkHash(@NonNull File file) {
56-
Log.v(TAG, String.format("Calculating release id for %s", file.getPath()));
57-
Log.v(TAG, String.format("File size: %d", file.length()));
56+
LogWrapper.getInstance().v(TAG + "Calculating release id for " + file.getPath());
57+
LogWrapper.getInstance().v(TAG + "File size: " + file.length());
5858

5959
long start = System.currentTimeMillis();
6060
long entries = 0;
@@ -90,20 +90,23 @@ public static String calculateApkHash(@NonNull File file) {
9090
zipFingerprint = sb.toString();
9191

9292
} catch (IOException | NoSuchAlgorithmException e) {
93-
Log.v(TAG, String.format("id calculation failed for %s", file.getPath()));
93+
LogWrapper.getInstance().v(TAG + "id calculation failed for " + file.getPath());
9494
return null;
9595
} finally {
9696
long elapsed = System.currentTimeMillis() - start;
9797
if (elapsed > 2 * 1000) {
98-
Log.v(
99-
TAG,
100-
String.format(
101-
"Long id calculation time %d ms and %d entries for %s",
102-
elapsed, entries, file.getPath()));
98+
LogWrapper.getInstance()
99+
.v(
100+
TAG
101+
+ String.format(
102+
"Long id calculation time %d ms and %d entries for %s",
103+
elapsed, entries, file.getPath()));
103104
}
104105

105-
Log.v(TAG, String.format("Finished calculating %d entries in %d ms", entries, elapsed));
106-
Log.v(TAG, String.format("%s hashes to %s", file.getPath(), zipFingerprint));
106+
LogWrapper.getInstance()
107+
.v(TAG + String.format("Finished calculating %d entries in %d ms", entries, elapsed));
108+
LogWrapper.getInstance()
109+
.v(TAG + String.format("%s hashes to %s", file.getPath(), zipFingerprint));
107110
}
108111

109112
return zipFingerprint;

0 commit comments

Comments
 (0)