-
Notifications
You must be signed in to change notification settings - Fork 3
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
ld-313: content for building apps #767
Conversation
|
||
On the other hand, an Android App Bundle (AAB) is a publishing format that includes all the compiled code and resources of an app, but does not create a final APK. Instead, it allows the Google P,lay store to generate an APK for each different device configuration: different screen densities, CPU architectures, and languages. Users cannot directly install AABs and they must be uploaded to the Google Play Store for distribution. Because the Play Store generates optimized APKs for each device, AABs are smaller in size which results in faster downloads, reduced storage space, and better performance. | ||
|
||
### Signing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
since we should sign before building, should i remove objective #2?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I’m still a little hazy on the details (maybe talk to Christopher?) but I thought we could build the AAB that is going to be submitted to the Play Store without signing.
Maybe this page and the next needs some reorganization.
It seems like the process is actually:
- Build an AAB for publishing/updating an app in the Play Store.
- Signing is only used for… generating an APK for testing on a device?
So I think I would approach it this way:
On this page:
- Objective 1: Create a build and verify that the build (AAB) is generated.
- Objective 2: Discuss APKs, signing, and testing on a device.
On the next page:
- Objective 1: Walkthrough of the AAB -> Google Play Store process for publishing an app.
- Objective 2: Discuss app updates, versioning, etc.
I’m really unsure about this though, so I would get @christopherjbaker’s opinion and go with what he says.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
your AAB needs to be signed with an upload key to be put onto the store and then the play store does some extra signing (I think) to create APKs using your AAB
However, before your application binary is uploaded to Google Play it needs to be signed with an upload key.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From my current knowledge, I'd say the same as Chasen.
idk anything about signing the AAB. How do you do that? Do you set up signing and then build? Or do you run a sign command after you have the AAB?
tbh, I'd go with chasen suggestion either way. Even if the aab need to be signed for upload and it does that when you make the build, that's part of the second page not the first.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@christopherjbaker the first paragraph here https://reactnative.dev/docs/signed-apk-android briefly covers it, and links out to https://developer.android.com/studio/publish/app-signing which says:
When releasing using Android App Bundles, you need to sign your app bundle with an upload key before uploading it to the Play Console, and Play App Signing takes care of the rest. For apps distributing using APKs on the Play Store or on other stores, you must manually sign your APKs for upload.
so for apk you must sign the apk, but for aab you must sign it with an upload key?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so to my understanding the steps for aab (to upload to play store) are
- generate upload key
- update gradle config/vars to include upload key keysotre
- build aab
- upload to playstore
@@ -10,17 +10,40 @@ | |||
|
|||
In this section, you will: | |||
|
|||
- TODO | |||
- Cover EAS production builds | |||
- Learn how to create a build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We’ve mostly tried to avoid words like “learn how” and told learners what they will actually do, e.g. “Create a build.”
Also, these should always end in a punctuation mark (period).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
updated
|
||
### Concept TODO | ||
EAS, or Expo Application Services, is a service provided by Expo to help streamline the process of building and deploying React Native applications. It is a cloud-based solution that allows us to create production builds, submit them to the app stores, and manage OTA (over-the-air) updates. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would move this to the very end. I’m thinking about cutting it altogether (I don’t think it fits with our content).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
moved
|
||
An Android Package (APK) is the traditional format used to distribute and install Android apps. It is a zip file that contains all the necessary files for the app to run on an Android device. APKs can be directly installed onto devices or through app stores like Google Play. However, APKs are not optimized and contain all resources for every device configuration, leading to larger file sizes. | ||
|
||
On the other hand, an Android App Bundle (AAB) is a publishing format that includes all the compiled code and resources of an app, but does not create a final APK. Instead, it allows the Google P,lay store to generate an APK for each different device configuration: different screen densities, CPU architectures, and languages. Users cannot directly install AABs and they must be uploaded to the Google Play Store for distribution. Because the Play Store generates optimized APKs for each device, AABs are smaller in size which results in faster downloads, reduced storage space, and better performance. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P,lay
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
|
||
On the other hand, an Android App Bundle (AAB) is a publishing format that includes all the compiled code and resources of an app, but does not create a final APK. Instead, it allows the Google P,lay store to generate an APK for each different device configuration: different screen densities, CPU architectures, and languages. Users cannot directly install AABs and they must be uploaded to the Google Play Store for distribution. Because the Play Store generates optimized APKs for each device, AABs are smaller in size which results in faster downloads, reduced storage space, and better performance. | ||
|
||
### Signing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I’m still a little hazy on the details (maybe talk to Christopher?) but I thought we could build the AAB that is going to be submitted to the Play Store without signing.
Maybe this page and the next needs some reorganization.
It seems like the process is actually:
- Build an AAB for publishing/updating an app in the Play Store.
- Signing is only used for… generating an APK for testing on a device?
So I think I would approach it this way:
On this page:
- Objective 1: Create a build and verify that the build (AAB) is generated.
- Objective 2: Discuss APKs, signing, and testing on a device.
On the next page:
- Objective 1: Walkthrough of the AAB -> Google Play Store process for publishing an app.
- Objective 2: Discuss app updates, versioning, etc.
I’m really unsure about this though, so I would get @christopherjbaker’s opinion and go with what he says.
@@ -44,24 +67,6 @@ TODO: What happens if there isn’t a successful build? 😅 | |||
|
|||
TODO: Can the AAB be run in the emulator? If so, we should instruct them to do that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can these remaining TODOs be addressed or removed?
No description provided.