printdotio / printio-ios-sdk

SDK that enables the printing of any photo, from any source, onto any product!
Other
20 stars 11 forks source link

Can't exit Print SDK #512

Closed koppacetic closed 8 years ago

koppacetic commented 8 years ago
  1. Enter Print SDK
  2. Navigate to a product detail page
  3. Press back button until back at Print home screen
  4. Press back button

Nothing happens. At this point there is no way to exit the Print SDK. Whenever you press the back button, this message appears in the logs:

2016-02-01 14:16:16.054 photobucket[48731:4305457] PrintIO: -[PIOBaseViewController adjustNavBarForiOSVersionWithBackgroundColor:]

If you open the SDK and don't go into a product detail page, this does not happen and you can exit the SDK.

perisicboro commented 8 years ago

@Ivan1985 please try to recreate this issue. @koppacetic can you send us initialization code to boro@print.io

Ivan1985 commented 8 years ago

@perisicboro @koppacetic We could not recreate it, so we definitely need initialization code

koppacetic commented 8 years ago

Here's the initialization code:

NSArray *fonts = @[ @"MuseoSans_300.otf", @"MuseoSans_500.otf",

@"MuseoSans_500.otf", @"MuseoSans_700.otf" ]; [self.printIO setFonts:fonts]; [self.printIO showCountrySelectionOnScreen:PIO_SCREEN_FEATURED_PRODUCTS backgroundColor:[UIColor pb_ios7style_blue]]; [self.printIO hideCategoriesInFeaturedProducts:NO];

[self.printIO setLoadingGIF:@"greyspinner"];
[self.printIO setLoadingText:@"Loading..."];

// Paypal setup
[self.printIO setPayeeName:kPrintIOPayeeName];
[self.printIO setPayPalStagingClientId:kPrintIOPaypalStagingClientId
                productionClientId:kPrintIOPaypalProductionClientId];

// Braintree setup
[self.printIO

setBraintreeStagingEncryptionKey:kPrintIOBraintreeStagingEncryptionKey

productionEncryptionKey:kPrintIOBraintreeProductionEncryptionKey];

// Third party image source setup
[self.printIO setFacebookAppId:kPrintIOFacebookAppId redirectUrl:@"

https://printio.auth"]; [self.printIO setDropboxKey:kPrintIODropboxAppKey redirectUrl:@ "printio://auth"]; [self.printIO setInstagramClientID:kPrintIOInstagramClientId redirectUrl:@"printio://auth"]; [self.printIO setFlickrKey:kPrintIOFlickrConsumerKey secretKey:kPrintIOFlickrConsumerSecret redirectUrl:@"printio://auth"];

// Color customization
NSData *xmlData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle]

pathForResource:@"printio" ofType:@"xml"]]; [self.printIO setCustomizationXML:xmlData];

// Photo sources setup
PIOSideMenuButton *phoneSource = [[PIOSideMenuButton alloc]

initWithType:PIO_SM_PHONE]; //phoneSource.fontSizeOfTitle = 10.0; PIOSideMenuButton pbSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_PHOTOBUCKET]; //pbSource.fontSizeOfTitle = 10.0; PIOSideMenuButton fbSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_FACEBOOK]; //fbSource.fontSizeOfTitle = 10.0; PIOSideMenuButton igSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_INSTAGRAM]; //igSource.fontSizeOfTitle = 10.0; PIOSideMenuButton dbSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_DROPBOX]; //dbSource.fontSizeOfTitle = 10.0; PIOSideMenuButton flSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_FLICKR]; //flSource.fontSizeOfTitle = 10.0; PIOSideMenuButton passedSource = [[PIOSideMenuButton alloc] initWithType:PIO_SM_PASSED_PHOTOS]; [self.printIO setAvailablePhotoSources:@[phoneSource, pbSource, fbSource, igSource, dbSource, flSource, passedSource]]; [self.printIO hidePhotoSourcesInSideMenu:YES];

// Navbar setup
[self.printIO setStatusBarDark:YES hidden:NO];
[self.printIO navigationBarColor:[UIColor whiteColor]
                  titleColor:[UIColor blackColor]
   leftButtonBackgroundColor:[UIColor whiteColor]
  rightButtonBackgroundColor:[UIColor whiteColor]
             titleButtonIcon:nil];
[self.printIO setThreeButtonsNavigationBarSytle:YES];
[self.printIO setNavigationBarSaveToCartBackgroundColor:nil
                                             titleColor:[UIColor

whiteColor] buttonBackgroundColor:nil buttonTitleColor:[UIColor whiteColor]];

[self.printIO setIconForShoppingCart:[[NSBundle

mainBundle]pathForResource:@"pb_icon_cart_black" ofType:@"png"] withNumberOfProducts:YES labelPosition:CGPointMake(14.0, 5.5) textColor:[UIColor whiteColor]]; [self.printIO setIconForBackButton:[[NSBundle mainBundle]pathForResource:@"pb_back" ofType:@"png"]]; [self.printIO useSideMenuWithMenuIcon:[[NSBundle mainBundle]pathForResource:@"pb_menu_a" ofType:@"png"]];

// Sidebar menu setup
[self.printIO slideSideMenuFromRight:YES];

PIOSideMenuButton *helpButton = [[PIOSideMenuButton

alloc]initWithTitle:@"HELP"

type:PIO_SM_HELP]; helpButton.iconName = @"pb_btn_help"; helpButton.textColor = [UIColor blackColor]; helpButton.dataHolder = @" http://support.photobucket.com/hc/en-us/categories/200154330";

[self.printIO sideMenuAddButtons:@[helpButton]
                     options:nil
                optionsTitle:@"Options"
           optionsTitleColor:[UIColor blackColor]
                optionsColor:[UIColor pb_ios7style_grey3]
               accountsTitle:@"Accounts"
          accountsTitleColor:[UIColor blackColor]
               accountsColor:[UIColor pb_ios7style_grey3]
                        info:nil
                   infoTitle:@"Info"
              infoTitleColor:[UIColor blackColor]
                   infoColor:[UIColor pb_ios7style_grey3]
   backgroundImageForButtons:[[NSBundle mainBundle]

pathForResource:@"pb_bcg" ofType:@"png"]];

// Products screen customization
[self.printIO showToolbarInCustomizeProduct:NO backgroundImage:nil];
[self.printIO setLogoFileName:@""];
[self.printIO

setQualityGuaranteeText:NSLocalizedString(kQualityGuarantee, nil)]; [self.printIO hideComingSoonProducts:YES];

NSArray *availableProducts = @[ @(PRODUCT_FRAMED_PRINTS()),

@(PRODUCT_CANVAS_WRAPS()), @(PRODUCT_ACRYLIC_BLOCKS()), @(PRODUCT_ACRYLIC_TRAYS()), @(PRODUCT_BEACH_TOWEL()), @(PRODUCT_CANVAS_MINIS()), @(PRODUCT_CANVAS_POSTERS()), @(PRODUCT_COASTERS()), @(PRODUCT_DOG_BEDS()), @(PRODUCT_EVERYTHING_BAGS()), @(PRODUCT_FLEECE_BLANKETS()), @(PRODUCT_MAGNETGRAM()), @(PRODUCT_METAL_PRINTS()), @(PRODUCT_MINIBOOKS()), @(PRODUCT_MOUSEPADS()), @(PRODUCT_PHONE_CASES()), @(PRODUCT_PILLOW_SHAMS()), @(PRODUCT_PLACEMATS()), @(PRODUCT_PRINTS()), @(PRODUCT_PUZZLES()), @(PRODUCT_RUGS()), @(PRODUCT_SHOWER_CURTAINS()), @(PRODUCT_STICKERBOOKS()), @(PRODUCT_TABLET_CASES()), @(PRODUCT_THICK_PRINTS()), @(PRODUCT_THROW_PILLOWS()), @(PRODUCT_TINYBOOKS()), @(PRODUCT_TOTE_BAGS()), @(PRODUCT_WALL_CALENDARS()), @(PRODUCT_WOVEN_BLANKETS()) ]; [self.printIO setAvailableProducts:availableProducts];

// Edit screen customization
NSArray *editButtons = @[[[PIOButton

alloc]initWithType:PIO_BUTTON_IMAGE_EDITOR_INFO], [[PIOButton alloc]initWithType:PIO_BUTTON_IMAGE_EDITOR_ROTATE], [[PIOButton alloc]initWithType:PIO_BUTTON_IMAGE_EDITOR_EDIT_TEXT], [[PIOButton alloc]initWithType:PIO_BUTTON_IMAGE_EDITOR_EFFECTS]]; for (PIOButton *button in editButtons) { button.titleColor = [UIColor pb_ios7style_blue]; button.iconColor = [UIColor pb_ios7style_blue]; }

// Image Editor screen customization
[self.printIO imageEditorShowButtons:editButtons];

[self.printIO

setTrackingIDForGoogleAnalytics:GOOGLE_ANALYTICS_TRACKING_ID];

On Tue, Feb 2, 2016 at 9:32 AM, Ivan Ignjatovic notifications@github.com wrote:

@perisicboro @koppacetic We could not recreate it, so we definitely need initialization code

— Reply to this email directly or view it on GitHub.

perisicboro commented 8 years ago

@koppacetic Thanx. It's fixed now, and fix will be available in next sdk version, which we expect to be to the end of this week.

koppacetic commented 8 years ago

Hey Boro,

That's good to hear. Thanks. However, we were hoping to release our app tomorrow, is there a change I can make to my initialization code that would avoid the bug without waiting for your next release?

perisicboro commented 8 years ago

only way to avoid this bug is to remove this line: [self.printIO setThreeButtonsNavigationBarSytle:YES];

koppacetic commented 8 years ago

Okay, thanks for the info.