November 26, 2014

Debugging S1 Lightning & Visualforce Apps via Chrome Remote Debugging (Part 1)

If you are a Mobile developer, you know that mobile and desktop browsers are not same for developers, all beauty and smoothness of desktop browsers go away on mobile, when you go beyond a "Hello World" mobile web app.

This blog post tries to help mobile developers using HTML5, Javascript to develop mobile web pages using Lightning, Visualforce for S1 or Salesforce Mobile SDK. This post is targeted towards Android based devices only, in next post we will cover iOS and Safari based remote debugging as well.

September 22, 2014

Using Skuid to quickly create S1 + Mobile friendly responsive pages

Skuid is an interesting framework to rapidly develop good looking S1/Mobile visualforce pages, it's specially good for admins as they can create and maintain such pages with clicks not code.

My teammate Imran was researching around Skuid. This post is to share some of his findings, to help admins create Salesforce 1 pages quickly by clicks.

September 7, 2014

Auto Updating HTML5 Cache Manifest for Salesforce 1 / Visualforce

For well known performance reasons, client side caching of web resources like stylesheets, images and scripts is important. This becomes pretty important for those who are creating mobile/tablet Visualforce pages for Salesforce 1. Luckily HTML5  Application Cache is well supported on Visualforce + Salesforce 1 stack, please refer this official document for more details.

Getting started with Cache Manifest is easy, but problem comes when cached resources are changed, and we need to force browser to refresh them ?


August 12, 2014

Using "Chrome Mobile Emulator" for testing Salesforce 1 Mobile Apps

If you are developing Salesforce 1 mobile apps, and struggling to test the same, on different mobile devices, geo locations and network conditions, following video might be good help:




Resources


August 1, 2014

Testing SOAP Outbound Messages without failures

As suggested by Salesforce docs, one can use services like requestb.in or inspectb.in to test outbound messages. But these services are pretty generic so they just return 200 / OK response for any inbound request. For an outbound message to be considered delivered successful by salesforce, it needs an SOAP XML response with "Ack = true" in following format:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<notificationsResponse xmlns="http://soap.sforce.com/2005/09/outbound">
<Ack>true</Ack>
</notificationsResponse>
</soapenv:Body>
</soapenv:Envelope>


June 30, 2014

Cancelling out of HTML5 browser validations !

This post is based on a short scary movie, I was working on a cool HTML-5 page

 <apex:page .... docType="html-5.0"/>


But all the coolness disappeared when powers of CANCEL button are gone. The typical Cancel button in salesforce, which is always tough enough to get out of any validation, i.e.

<apex:commandButton action="{!cancel}" value="Cancel" 
immediate="true" />


On hitting the cancel button like this, HTML5 and browser acted smart and ruined all the fun, i.e. got following error:



May 7, 2014

Managed Package Extension - Developer Console Chaos !

Recently I was working on a managed package extension, which required me to use some GLOBAL Apex APIs from the managed package.

I mostly use aside.io, mavens mate or eclipse (in decreasing order of preference). I was giving Developer console a try, because of recent Spring'14 developer console enhancements, like :

  • themes (monokai my fav) 
  • adjustable font sizes, can't use Developer console with those big fonts :)
You must be thinking, I am pretty choosy ? Yes I'm, specially when it comes to IDEs, where I spend most of my life :) 

But, all the fun and excitement disappeared, when I ran into a strange save/compile problem, that made me quit Developer Console again.

January 12, 2014

Clutter free Salesforce schema builder experience

I recently spent quite sometime on Schema builder. One thing I always desired was more real estate to visualise more objects and stuff. Simplest things I could do to achieve this were

  1. Take chrome in full screen mode,  ⌘-Shift-F on Mac and F11 on Windows/Linux
  2. Hide side bar after adding required objects to the canvas. 

Next, I don't need this 1-2" of following Salesforce header while visualising objects.

salesforce website header

As I could easily quit schema builder by hitting browser back button or Close button (see screenshot below):

Salesforce Schema builder close button





Being a developer I use chrome developer tools a lot, so next quick dirty hack I could always do is hide/kill this Salesforce header, by deleting it from DOM using Chrome developer tools. 

But its not really neat, and I always have to do it. Some better solution should be there... ?

January 9, 2014

Open list (GIST) of Salesforce blogs

Salesforce community is pretty vibrant and growing like anything. Quite a few times I found some new interesting Salesforce blog, and thought "how come I missed it ?".

January 3, 2014

Salesforce Migration Tool installation on Mac OSX

I was setting up a Mac Machine, while installing Force.com migration tool, I was able to grab the zip file salesforce_ant_29.0.zip as per following steps mentioned in official guide.
  1. Log into a Salesforce organization on your deployment machine.
  1. From Setup, click Develop | Tools, and then click Force.com Migration Tool.
  1. Save the .zip file locally and extract the contents to the directory of your choice.
  1. Copy ant-salesforce.jar and paste into your Ant installation's lib directory. The lib directory is located in the root folder of your Ant installation.
I was stuck in last step #4, as I have to locate ant "lib" directory in installation folder.