Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add retrieve fingerprints page and consolidate - Android SDK #1266

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

DaveMeadAdjust
Copy link
Collaborator

Related issues

There is some redundant and outdated info for retrieving certificate fingerprints in our documentation.

https://adjustcom.atlassian.net/browse/ADAPP-17894
https://adjustcom.atlassian.net/browse/ADAPP-17907

Changes

Updates instructions and screenshots for retrieving certificate fingerprints to most recent and accurate information. Consolidates steps to retrieve fingerprints into one doc that other docs reference.

Required translations

Platform ZH JA KO
Android

Copy link

vercel bot commented Dec 30, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
dev-docs ❌ Failed (Inspect) Dec 31, 2024 9:24am

Copy link
Collaborator

@rscloura rscloura left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @DaveMeadAdjust, and thank you for the suggestions. We had discussed them in the past, and I do think they are an improvement over the previous version. Overall, I do believe we can integrate them, although I do have some inline comments. Most are nitpicks or small suggestions, but there is one slightly larger concern regarding non-standard formats (XAPK, APKS, ...).

| • Huawei AppGallery - App Signing Disabled <br />• Other store, or direct APK download <br />• Local debug build | [Keystore](#from-a-keystore) or [APK](#from-an-apk) |

#### From Google Play Console {#from-google-play-console}

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest adding an initial sentence explaining that both the signing key certificate fingerprint and the upload key certificate fingerprint may be required. Otherwise, steps 3 and 4 may be confusing.

![Screenshot of the upload key certificate page in Google Play Console](@images/sig-v3/google-play-upload.png)

#### From Google Play Console - Internal app sharing {#from-google-play-console---internal-app-sharing}

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Previously, we required the upload key certificate fingerprint for the internal app sharing case as well. In theory, it's not necessary, and it was asked simply because the old Google page layout had all certificates mixed together (just like in the previous case for release versions), making errors very common. Can you confirm that the Internal app sharing section of the Play Console now shows only a single certificate? If so, then no action is required. Otherwise, please include the upload key certificate fingerprint as well. It will avoid errors.


![Screenshot of the certificate page in Huawei AppGallery](@images/sig-v3/huawei-sha1.png)

5. If needed, install openssl:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use "OpenSSL", to remain consistent with the official capitalisation when referring to the library by name.


To retrieve certificate fingerprints from your keystore, follow these steps:

1. If needed, install [Android Studio](https://developer.android.com/studio) or Java Development Kit (JDK) to get the `keytool` command.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JDK is not required, as keytool comes bundled with any JRE distribution too.

Nitpick The chances that the development team who supposedly created an app doesn't have Android Studio or Java installed are negligible. I would suggest making this an inline observation rather than a full step in the description. Something like: "To retrieve certificate fingerprints from your keystore, follow these steps (Java is assumed to be installed):". A similar comment applies to the next section.

1. If needed, install [Android Studio](https://developer.android.com/studio) or Java Development Kit (JDK) to get the `keytool` command.
2. Locate your keystore:
- Self-managed keystore: path to the folder containing your .jks file
- Android default debug keystore:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The debug certificate fingerprints are not necessary anymore. I suggest removing this (and the corresponding commands below) to avoid any confusion.

[...]
```

Or different signatures for different Android versions:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There may be multiple signatures for the same version. I suggest removing "for different Android versions".

55:fb:97:0f:46:0f:94:ec:07:ea:01:69:50:5a:20:3f:a0:91:60:a4:f1:33:58:ea:76:dc:54:9e:a7:6a:b9:1a).
</Callout>

##### Extract APK from other formats {#extract-apk}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The XAPK format is not officially supported by Google, and requires a dedicated installer that often re-signs the app (e.g.: APK pure), which will cause the instructions here to fail. The AAB format also requires some post processing, such as uploading it to the Play Console and let it manage signing. The APKS format may be acceptable, but some research would need to be done before confidently marking it as supported. I am against listing any of these formats as officially supported by Adjust, at least when it comes to Signature, as they are non-standard ways of distributing apps, and the instructions here may not always be applicable.

@@ -0,0 +1,195 @@
---
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested changes in this file also apply in the v5 file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants