Skip to content
This repository has been archived by the owner on Feb 19, 2020. It is now read-only.

HockeyApp Update alert does not popup #515

Closed
junalmeida opened this issue Apr 15, 2018 · 7 comments
Closed

HockeyApp Update alert does not popup #515

junalmeida opened this issue Apr 15, 2018 · 7 comments

Comments

@junalmeida
Copy link

While debugging, I can see a breakpoint being hit at:

- (void) checkForUpdate:(CDVInvokedUrlCommand*)command
{
    CDVPluginResult* pluginResult = nil;
    if(initialized == YES) {
        [[BITHockeyManager sharedHockeyManager].updateManager checkForUpdate];
        pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK];
    }

However, I never see the alert window. I checked the sharedHockeyManager appidentifier variable and it is correct. I cannot see any message on system.log that indicates me the cause of this problem.

My development version is 0.0.1. Latest ipa for my appidentifier is 1.0.392, so I guess that it should offer the update alert.

Can you please advise?

@bmourat
Copy link
Contributor

bmourat commented Apr 17, 2018

hi @junalmeida,

I've rechecked with your versions and the alert window showed as expected. This could be server side issue, but I would like to take a peek at the code snippet that starts HockeySDK in your app, is that possible?

Best,
Murat

@junalmeida
Copy link
Author

Sure @bmourat , please let me know if the following is enough for you to investigate.
I use the HockeySDK-ios via cordova:

 hockeyapp.start(
        (success) => {
          hockeyapp.trackEvent(null, null, "check_for_update: " + (this.session ? this.session.email : ""));
          hockeyapp.checkForUpdate(
            (up_ok) => {
              console.log("check_for_update: " + up_ok);
            },
            (up_err) => {
              this.toastCtrl.create({
                message: "Erro: " + up_err,
                showCloseButton: false,
                cssClass: "error",
                duration: 3000
              }).present();
            });

        },
        (err) => {
          this.toastCtrl.create({
            message: "Erro: " + err,
            showCloseButton: false,
            cssClass: "error",
            duration: 3000
          }).present();

        }, appId, true, 2 /* HockeyApp.CheckForUpdateMode.CHECK_MANUALLY */, false, true);

After setting the verbose log [BITHockeyManager sharedHockeyManager].logLevel = BITLogLevelVerbose; on HockeyManager.m, I can see the following log:

2018-04-16 18:26:58.389 Samara Alpha[25104:1271208] [HockeySDK] -[BITUpdateManager finishLoading]/900 INFO: Received API response: {"versions":[],"tracker":{},"company":"Tv Globo"}
2018-04-16 18:26:58.389 Samara Alpha[25104:1271208] [HockeySDK] -[BITUpdateManager finishLoading]/920 WARNING: No versions available for download on HockeyApp.

@bmourat
Copy link
Contributor

bmourat commented Apr 18, 2018

Hi @junalmeida

I've performed some investigation and indeed the code you provided doesn't call update functionality. The reason is that on start HockeySDK is performing multiple initializations and checks in separate threads, and when you call checkForUpdate immediately after starting SDK, some of the initializations are not finished. There are couple of ways to resolve this issue:

  1. Use HockeyApp.CheckForUpdateMode.CHECK_ON_STARTUP option (Is there any particular reason why are you checking for updates manually?)
  2. Use timer to delay call for updates say for 1 second

Hope this helps if it doesn't could you please try calling for updates in button handler and see if it is working?

Best,
Murat

@junalmeida
Copy link
Author

junalmeida commented Apr 18, 2018

@bmourat A colleague of you stated that the real problem is that the iOS sdk cannot check for updates if these versions are restricted to a distribution group. After I set them to unrestricted, the code started to work.

I was using the manual option in a matter of try and error.

I guess that you can close this issue, but I did not find any tip on the documentation of checkForUpdates regarding the restrict option of the app versions on ios.

@bmourat
Copy link
Contributor

bmourat commented Apr 19, 2018

Great, glad you figured out your issue!

@daehn
Copy link

daehn commented May 7, 2019

I'm running into the same issue right now.

A colleague of you stated that the real problem is that the iOS sdk cannot check for updates if these versions are restricted to a distribution group.

Is this the case? If so I wasn't able to find this in the documentation, but maybe I missed something. If not I think it would be good to mention this somewhere, or ideally to enable this functionality for distribution groups as well.

@annakocheshkova
Copy link

@daehn If you want to restrict versions to specific users, you can follow the instructions on our guide Authenticating Users on iOS.

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

No branches or pull requests

5 participants