Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

When developing an application to run on top of the Pulsar Platform, developers have the freedom to use the wealth of web technology available in the mobile app environment. Pulsar has been successfully used with several popular web frameworks, allowing developers to use some of the same code and techniques they have used in more traditional web development. However, there are a few technologies and methodologies that can be used to improve the developer experience while building a Pulsar-based app.

General Recommendations

  1. Use Promises for continuations
  2. Keep things modular -- build one library of API calls in the resources
  3. Use global resources amap
  4. In code, use 18 character Ids
  5. Date format should be a valid Salesforce date format
  6. When building custom HTML pages, be mindful that using a "Submit" button will generally reload the page by default. This may trigger some of your initialization and setup methods to fire an additional time and prevent some asynchronous calls from completing. 

Testing/Test Data

We encourage the use of a Salesforce Sandbox to test your code in the Pulsar environment. 

Debugging your HTML/Javascript

One of the first obstacles most developers run into is the difficulty of debugging their code in-place while it is running within the Pulsar app.

Coming in Spring 2020 Pulsar release for Android and Windows, you will be able to use a local development server running on your development machine to rapidly iterate on your code.

Mobile Safari Tips

  • In order to have smooth scrolling on iOS Safari, any time you would use CSS  overflow: scroll; -- 
    Make sure to include: -webkit-overflow-scrolling: touch; This will ensure that your scrolling performance is smooth.

Hiding The Default Navigation Controls 

Some developers don't want to see the default Done button and the navigation elements and want to control this themselves. Pulsar provides configuration settings to achieve this. Use the following settings for this purpose. 



NameHide the Done button on the custom HTML Page

Key

pulsar.docs.hideDoneButton

Value

TRUE / FALSE

Default Value (if any)

FALSE
Compatibility
  • iOS
  • Windows
  • Android

Description

By default, a user can click on the Done button to close the custom HTML page and get back to Pulsar Home Page or a Pulsar record screen. In some cases, customers would like to hide the done button on that page. This setting will let enable that behavior. 
Notes/Comments


NameHide HTML Navigation Buttons (Back, Forward, Refresh)

Key

pulsar.docs.hideNavigation

pulsar.docs.<docID>.hideNavigation

Value

TRUE / FALSE

Default Value (if any)

FALSE
Compatibility
  • iOS
  • Windows
  • Android

Description

This setting will hide the back, forward, and refresh buttons if this setting is specified and set to TRUE.
Notes/Comments

Generating PDF files offline - Some best practices

Using HTML/JS Tables:


If you need to generate a PDF offline from your HTML/JS app, we've determined that the best approach is to avoid the use of <table> elements and instead build the page structure with <div> elements.  It's been noted (https://stackoverflow.com/questions/9288802/avoid-page-break-inside-row-of-table/27209406) that <tr> elements do not appear to respect the break-inside/page-break-inside CSS attributes. 
Note: If you are building your app to run within Pulsar FSLapp:  Pulsar FSL app  is utilizing Bootstrap 4. In the discussions around page breaks and <table> elements, it's been suggested that Bootstrap may impact this. 
There are a number of suggested solutions in the Stack Overflow post. We have tested a few of the simpler ones (changing the attribute to break-inside and applying the properties to <td> elements instead of <tr>) without success. So we think using <div> elements as the primary structure of the document will be the easiest path forward.


  • No labels