Sunday 6 December 2015

IOS and Visualforce in Salesforce 1 app Hicups

Lighting is out and looks like its  the future of customization of Salesforce 1 mobile pages .Speaking of present still we have large number of apps having visualforce page for the Salesforce 1 app build using either angular(or other frameworks ) or plain old visualforce styled to responsive design .

This blogpost is sharing some insights into common issues that I encountered with Visualforce inside SF1 container when I was testing the functionality with iPhone or iPad.


Lets list all of them one by one and list the work around for issues as these have no proper fix and are logged as issues by SFDC


1)Key freezing issue with HTML input tags


This is one of the primary issues that's  really show stopper .If you have a visualforce and you use apex:input or normal HTML input and double tap the cursor on the text field you will notice that your keys are freezed and text you enter dont appear on the input box .


This looks to be serious issue with new version of IOS and Salesforce 1 app .Even you are using twitter typeahead for autocomplete or lookups this issue can be easily observed and keys will freeze once you make selection .


The workaround for this is to include a small script at the bottom of the page that resolves this .Please note this is a workaround until this is fixed officially



2)Not able to scroll the iframe embedded in Visualforce inside SF1 container for iPad or iPhone 

This is another common bug and has something to do with IOS webkit inside SF1 .The workaround is below small snippet that adds scrolling behavior needed



There are also certain things that we need to note about navigation pattern we follow in SF1 specific apps

1)When navigating to the external world the right function to use is as below

navigateToURL(​url​[, isredirect])

If you want SF1 container not to remember the history set redirect parameter to the true state.

2)Use back function to navigate to the back and use redirect parameter as true if you want your page to refresh

back(​[refresh])

Using frameworks to develop SF1 apps can increase the speed of app build .Also for complex SF1 visualforce page if you have too many actions and you are packaging for as an appexchange app its worth to write some automation testing using selenium or using protractor whatever you feel comfortable just to not scratch your head if something breaks later due to SFDC releases or due to some code change during upgrade.

I hope you enjoyed this post and will help you troubleshoot issues with SF1 app

10 comments:

  1. Positive site, where did u come up the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include.
    online phone shop

    ReplyDelete
  2. Awesome and interesting article. Great things you've always shared with us. Thanks. Just continue composing this kind of post.
    IOS DEVELOPMENT in Seattle

    ReplyDelete
  3. Can I simply say what a relief to search out somebody who actually knows what theyre talking about on the internet. You undoubtedly know the right way to carry a difficulty to gentle and make it important. More folks must read this and understand this facet of the story. I cant believe youre not more common since you undoubtedly have the gift.apps pour pc

    ReplyDelete
  4. Thank you because you have been willing to share information with us. we will always appreciate all you have done here because I know you are very concerned with our. Iosem

    ReplyDelete
  5. It helps you to build better internal resources along with a good staffing that helps in suitable salesforce growth. scenario based salesforce interview questions

    ReplyDelete
  6. You can found a professional institute who are famous for Salesforce Online Training in Ameerpet, Hyderabad, India. Are you really interested to make your career as Salesforce Consultant? Then take a chance to interact with us, our Salesforce Online Training will surely make a difference. Salesforce training in Hyderabad

    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
  8. This comment has been removed by the author.

    ReplyDelete
  9. This comment has been removed by the author.

    ReplyDelete
  10. Your blog is an innovative initiative in the world of blogging. You have a unique imagination and have come up with some of the most creative ideas I've ever seen. Best of luck for your blogging journey. Keep engaging us! Best Way to Buy Property

    ReplyDelete

Introducing Lightning Base Components

Lightning Base Components are great addition to the platform and in fact revolutionary .One of the concerns around lightning component ...