microsoft / appcenter

Central repository for App Center open source resources and planning.
https://appcenter.ms
Creative Commons Attribution 4.0 International
1.01k stars 225 forks source link

Link to Release on install.appcenter.ms #140

Open scottschmitz opened 5 years ago

scottschmitz commented 5 years ago

Describe the solution you'd like I would like to be able to generate links that launch directly to a release on install.appcenter.ms. It appears as though currently you can only generate links to all releases.

Describe alternatives you've considered Currently we can link to the list of all releases for an app. You can also by getting the link of the download button send a direct link to an apk. However it would be nice to be able to generate a link that launches to a release where you can view release notes

joshfriend commented 5 years ago

HockeyApp let you do this, and it was amazing. Each version in the dashboard had a "Public page" link which was unique to each version. It would be something like this: https://rink.hockeyapp.net/apps/<some hex app id>/app_versions/1234

J-Swift commented 5 years ago

This is big for me as well. I really want to have some (minimal) security around the public release link. Even better if the release url was fully randomized so that linking to a single public release does not necessarily let you access all other public releases.

botatoes commented 5 years ago

Thanks for the feature request. We're planning on merging the install portal with the main App Center portal in the upcoming months. Along with that effort, we will support links to specific versions as well as public pages.

noahsark769 commented 5 years ago

Just wanted to throw my support behind this too - having a specific page to install a specific build of our internal iOS apps would really be a great help. Ideally we'd like this available as some API (fastlane plugin would be the best but I think we could deal with some sort of other interface as well) so that we can send Slack messages to engineers who have kicked off enterprise builds of our iOS apps with a link to the download page.

The other thing that would be really great about this would be a page where we could see builds for a given app in order of upload, rather than app version. I noticed also that appcenter has a "releases" page that lists all the releases in order of upload, but there's no install button on this page :( seems like if we had a permalink to an install page, we could pretty easily put that link on the "releases" page in order to solve this issue too πŸ‘

Happy to see that this is on the radar!

karimElJed commented 5 years ago

That is great. I just moved from HockeyApp to AppCenter and public pages is the feature I miss the most. Any update on the rough time schedule?

RyanThomas73 commented 5 years ago

@botatoes Are there github issue(s) for the portal merge that we can track for status updates and/or provide feedback on?

botatoes commented 5 years ago

@RyanThomas73 I am working on the first round of requirements this week and will create an issue once I have the draft going. I'll post an update here to get your feedback. We will be working with designers on it soon but I'll put out some information around it beforehand.

SpaceApeGamesSy commented 5 years ago

I'll +1 this as well, though our use case is specific to sharing builds around the development team. I seem to be able to share links to specific builds (e.g. https://appcenter.ms/orgs/<your org>/apps/<your app>/distribute/releases/<release number>) but that page doesn't include a download button on mobile πŸ€¦β€β™‚ .

The desktop page does include a download button, but downloads builds rather than installing them, which is a bit of a mess workflow-wise, specifically on iOS.

RyanThomas73 commented 5 years ago

@SpaceApeGamesSy We've had problems specific to iOS as well. One recent problem we ran into was that the 'Download' button doesn't appear on iOS devices when we're visiting the site in Safari. If we install chrome on the iOS device and open the site on the same device the download button was visible.

The latest version of the HockeyApp mobile app is now pulling in the App Center builds for us so we've switched back to using that at the moment in lieu of using the web portal

botatoes commented 5 years ago

Quick update on this. We are finalizing the designs this week (there were some hiccups but we finally did it 😭). I will post links to the flow on this thread next week to get some feedback from you all.

adibendahan commented 5 years ago

+1

This is use case is a must in a development team... Waiting for updates.

Ant8 commented 5 years ago

@botatoes any update on this? :)

TLiu2121999 commented 4 years ago

+1 This is causing so much inconvenience during cross team testing since we have many versions and releases.. And people have to scroll all the way down to find an earlier version.

aindran commented 4 years ago

Totally need this feature after switching from HockeyApp.. Creates a lot of confusion otherwise...

SpaceApeGamesSy commented 4 years ago

@nrajpurkar Nice to see that the "Updated tester experience" is on the October roadmap, but there are only 43 days remaining to transition to App Center. Are we going to get these features before the transition period ends? None of my teams are happy to migrate to App Center without the ability to link others in the studio directly to the builds they want to share - to the point they're starting to ask whether this is the right solution for us at all.

cjwirth commented 4 years ago

We use HockeyApp for only two things:

  1. Distributing feature builds internally and to testers
  2. Collecting crash logs

(2) seems to be okay. We preferred the HockeyApp way of seeing a list of releases with the number of crashes listed, and then you can open the release to see crashes specific to versioning. App Center has filtering as well, but getting the same information is not as quick.

However, not being able to efficiently do (1) is a huge dealbreaker for us. We've begun looking into alternatives as well.

I understand that App Center has a lot more things added onto it (e.g. Build, Test, Analytics, Auth, Data, and Push). And that's great! It's just that HockeyApp handled our subset of use cases very well, and App Center so far hasn't provided us with the same experience.

botatoes commented 4 years ago

@SpaceApeGamesSy We have a team that picked up this work today. I understand the frustration for no deep linking and promise to get this delivered ASAP.

@winnieli1 can address the issues and feedback regarding crash logs @cjwirth

winnie commented 4 years ago

@cjwirth thanks for the feedback! We are aware that the design difference between HockeyApp and App Center isn't intuitive for some customers. We don't have immediate plans to change this but we're constantly exploring ways to improve our experience. I'll reach out if there are any updates or mockups I can share.

Thanks!

smpeleato commented 4 years ago

(2) seems to be okay. We preferred the HockeyApp way of seeing a list of releases with the number of crashes listed, and then you can open the release to see crashes specific to versioning. App Center has filtering as well, but getting the same information is not as quick.

@winnieli1 - for what it's worth, I echo this, I've been trying to get used to using AppCenter as the transition date looms but I still find myself going back to the HockeyApp site because it's a lot easier to see the crash breakdown by version.

shvedoff commented 4 years ago

The lack of possibility to generate direct link to a release with a specific build number is blocker for us thus we are not able to make a transition. According to our workflow testers get link to HockeyApp public page of the build to test and then they use QR code there to install the build on a several iOS devices. If they will search for the necessary build on every device in that huge list of releases it would dramatically increase time spent on iteration of test and would add human factor mistakes to an installation process We are looking forward to see feature that we like so much in AppCenter

AlexKar commented 4 years ago

+1, the lack of this functionality is blocker for migration to AppCenter for us

avibdev commented 4 years ago

@botatoes , I see the "Deep link for release versions" task has been completed in the https://github.com/Microsoft/appcenter/wiki/Roadmap#hockeyapp page. However, I see there is no direct install page per each version available in Appcenter. Attached is the screenshot Distribution

Bob-Scopely commented 4 years ago

What happened to this feature? The October blog mentions it and even has a screenshot of it in use but I don't see anyway of accessing it. https://hockeyapp.net/blog/

dimazaid commented 4 years ago

@Bob-Scopely you should be able to see the down arrow (seen in the screenshot), by going to the release you want to deep link to. Clicking on it will give you a QR code as well as a link you can share.

image (8)

Bob-Scopely commented 4 years ago

@dimazaid That does not work. If I click on that arrow and follow the link i get the list of all builds. I specifically need to link to a single build like we currently do in Hockeyapp. This is core functionality in Hockeyapp and it's silly that Appcenter can't support it.

noahsark769 commented 4 years ago

Just note: the current behavior is not acceptable for our use case either. We need to be able to link to a specific build. I agree that it’s pretty silly that this is not possible in appcenter right now, it’s pretty core functionality.

dimazaid commented 4 years ago

Just to elaborate: when clicking on the link it takes you to the page and shows all releases. The release you linked to will be on top. Are you not seeing it?

joshfriend commented 4 years ago

@dimazaid I just tried it and I do see what you are talking about

but...

  1. The method to obtain the link is hard to find. I thought It was going to download the APK in my browser if I clicked that download icon. It is right next to a giant blue "DOWNLOAD" button after all πŸ˜›
  2. Having a link to a specific build bring you to a list of a hundred other releases is not intuitive for the link recipient either. It should just be the one version you linked on the page, thats it.

Here's what hockeyapp does (which is exactly what @scottschmitz and I are asking for):

  1. From your hockeyapp versions list, select a specific version (e.g. https://rink.hockeyapp.net/manage/apps/12345/app_versions/123)
  2. If public links are enabled there will be a "Download - Public Page" link for the version you selected
  3. The link goes to some obfuscated URL, e.g. https://rink.hockeyapp.net/apps/1234567890abcdef1234567890abcdef/app_versions/123
  4. Copying this link and sending it to someone will take them to a page that contains only the following info:

SpaceApeGamesSy commented 4 years ago

@dimazaid I'll +1 @joshfriend sentiment. Glad the feature is functional now and it gives me something for my teams to use. I'd love to see usability improvements to make it clearer to end users that they're looking at the right build, rather than showing them something almost identical to the screen they've just learned automatically highlights the wrong build 🀣

Bob-Scopely commented 4 years ago

@dimazaid I just double checked, on some of my projects the link takes me to a page with the selected build on the top of the list. On other projects it takes me to a page with the latest build on the top of the list regardless of the selected build.

This is a poor implementation and as other have said it doesn't meet my organizations needs. All we want is the functionality we had on Hockeyapp, that my entire company has been trained to utilize.

nuke-dash commented 4 years ago

How to get a link to a specific release for a public group?

mr-dangvanhien commented 4 years ago

Hi, any update here?

ieduardogf commented 4 years ago

Do we have any information about when we could have this old hockey app feature back to work on Appcenter?

dhoskins commented 4 years ago

@dimazaid

It would be extremely useful if this could support legacy HockeyApp direct links, of the form: https://rink.hockeyapp.net/apps//app_versions/

Currently these go to the page with all releases... the release in question is not at the top of the list. The link it redirects to is https://install.appcenter.ms/orgs//apps/, it seems this needs to have /releases/ appended to it.

Additionally I echo the sentiment that we need a page with only the linked build on it, not all builds.

dimazaid commented 4 years ago

Thanks everyone for the feedback, and apologies for the delay on the response. At this moment we don't have a timeline on when this is going to be released, and I'm hoping to get back to you as we're looking into this next.

@Bob-Scopely Can you reach out to the support team? All links should work and lead to the same experience.

SpaceApeGamesSy commented 4 years ago

@dimazaid Hey there, I've definitely seen this feature working, but one of my teams came today and showed me that download links to specific builds no longer work as expected, and just highlight the latest build for download. Is this a known issue? I didn't see anything obvious in github.

ilsinszkibal commented 4 years ago

This would be important for us too. Will contact support.

botatoes commented 4 years ago

@SpaceApeGamesSy I tried it and it works. It might be a little confusing visually but the top most one should be the one that was linked. Our UX team is working on some UI improvements to make it more apparent.

SpaceApeGamesSy commented 4 years ago

@SpaceApeGamesSy I tried it and it works. It might be a little confusing visually but the top most one should be the one that was linked. Our UX team is working on some UI improvements to make it more apparent.

Yes I'm aware it's confusing, and I've previously commented as such. I was definitely not confused by the UI because that was my response to my team, but on review it was indeed highlighting the latest build rather than the linked build.

I can confirm however in testing it appears to be working correctly now. I'll keep an eye out for this occurring again.

rgbworld commented 4 years ago

In order to complete my transition to AppCenter for distribution, I need to provide a direct public download link to my payment provider (Paddle). To be clear, a download link is sent via email to end users after a successful checkout. The email includes an Activation Key plus a button to download the app (dmg).

In my case, I require a link to directly download the latest version of the app - rather than directing users to a page where they can download the app from. This will allow for analytics to properly track downloads.

Currently, I have to call the AppCenter API via: /v0.1/public/sdk/apps/{app_secret}/distribution_groups/{distribution_group_id}/releases/latest

From there I am able to retrieve the download link, i.e: "download_url": "https://rink.hockeyapp.net/api/2/apps/{app_secret_without_dashes}/app_versions/7?format=zip&avtoken=XXXXXX&download_origin=hockeyapp&mctoken=XXXXXX"

Is there currently a direct download link that I can provide to Paddle that will always download the latest version of a specific app?

AppCenter tech support sent me to this issue, so hopefully this will be available soon!

Update: Calling AppCenter API to retrieve the download link and then redirecting to that link successfully downloads the app, however, it does not increase the download count. So, I would like to request that either a) A call to the download link increases the download count, or b) Provide an API call that can be called to manually increase the download count.

That feature would allow for either hosting the download on my server and manually increasing the download count, or allowing the initial download to be hosted at App Center and have every download increase the count. This would provide more accurate analytics :-)

ahdbilal commented 4 years ago

@rgbworld You can get the link by clicking on the down arrow in each of the purpose release. We understand from customer that this doesn't always works and the team will be taking up work this quarter (hopefully) to fix it. I will share a more concrete timeline. In the mean time, please give it a try and share your feedback here.

ahdbilal commented 4 years ago

I am reaching out to folks to get an update on this feature. We plan to take on work to make this feature reliable and usable. It will be great to get feedback from the folks to see what issues are they facing while using this feature. Here are the basic requirements of this feature that i have extracted from this conversation thread:

  1. Generate links that launch directly to a release on install.appcenter.ms
  2. The linked page should only contain the one version of the release (to which the link was generated)
  3. Public links should be shareable with anyone and shouldn't require one to login into appcenter
  4. Links generated for a private distribution group will require a login and can be accessed from users that are added in that group.
  5. Provide a self-explanatory and consistent UI for the above

Will really appreciate if you can share what else I have missed in the above list.

cjwirth commented 4 years ago

That sounds pretty, with one request:

Public links should be shareable with anyone and shouldn't require one to login into appcenter

I would prefer if this were an option. We would like to distribute some build entirely publicly, but some we would prefer to maintain internally.

ahdbilal commented 4 years ago

@cjwirth, Thanks for the note! For Internal use, do you create a public distribution group or a private one. If it is a private group, then the link to the release will require a login and can only be accessed from testers that are added in that group (this functionality works fine as of now). Let me know if this is what you imply.

cjwirth commented 4 years ago

OK great! Yeah, that sounds like it would work. We're not currently using App Center for distribution because we weren't able to link to specific builds at the time we were forced to make the transition from HockeyApp to App Center.

For those still looking for an alternative, we ended up using a fastlane plugin to upload to AWS S3 instead.

Bob-Scopely commented 4 years ago

@ahdbilal Those feature requirements along with selecting if a link is public as @cjwirth mentioned will fully meet the business requirements we have for this feature.

AlbertTong commented 4 years ago

My temporary solution I may apply is to go to each release within app center and use the "disable release" feature under the more menu which would hide those releases from the release page. I can reenable anytime. So now only the latest one release is visible on the public linked page.

I second all the comments above. I have a public group link for distribution of an enterprise iOS build that shared with a small company. I would like to the deep link to a specific release to only show that release instead of all prior releases.

ieduardogf commented 4 years ago

Hi there! Any update about this? @ahdbilal

We are really waiting for this old hockeyapp feature for some time already. Could you provide some info about the state of this requirement. Thanks :)

jacob-israel-turner commented 4 years ago

I've spent the last couple of weeks building a CI/CD pipeline around with Github Actions and AppCenter, assuming it was somehow possible to post a link in a PR to download and install a specific build from AppCenter. I've now been struggling with this very issue for several days, and am frankly dumbfounded that this is not a feature in AppCenter. With our product development flow, it's unrealistic for our QA team to wade through the list of all releases and find the one that was made from a specific PR.

Does the AppCenter team have an ETA on this feature? Or any workarounds? Ultimately, I need our iOS QA team to be able to click a link in a PR to download a build generated by that PR. I don't see any path forward at this point.

EDIT: I was finally able to get the itms-services:// URI to work, but had to do a redirect through our service since Github won't format non-HTTP URIs to be clickable. So we have a link to our server, which generates a small page with a link to the itms-services:// URI. This works for now. It would be much nicer, though, to just have a link directly to the AppCenter release.

EDIT 2: For anyone else trying to get this to work, this is the page that our Node server returns, where req.query['itms-link'] is the URI we get from AppCenter, ran through encodeURIComponent():

<html>
  <body>
    <a href="${req.query['itms-link']}">Download</a>
  </body>
</html>
xperiandri commented 4 years ago

@jacob-israel-turner, I know how to do that in Azure DevOps but not GitHub