This is a migrated thread and some comments may be shown as answers.

Is Icenium right for me?

3 Answers 41 Views
General Discussion
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
Brent
Top achievements
Rank 1
Brent asked on 22 Nov 2013, 08:26 PM
Hello,

I work for a company that currently uses several Telerik products in our web applications (we have a DevCraft Complete license) and have been looking heavily at using Icenium to solve a business need.

However, I'm fairly certain that what we want to do is not possible.  I fully admit, though, that the world of hybrid applications is new to me and Icenium might be just what we want.

We currently have a responsive website that is a feature rich application.  We are working on doing some enhancements for when running the application on mobile devices.  One such, major, enhancement would be to allow the user to use their camera to scan barcodes and avoid tedious manual entry via the Input field on the page.  I know that using the camera is not something the web page can do directly, so I'm going to need a native application installed on the user's device to do this.  I believe that Icenium can provide me with JavaScript code that serves as a bridge to allow me to write JavaScript to get the camera to do the functionality that I want (correct?).  So using Icenium I can create a native application to scan barcodes.

From what I've researched it's possible to create a custom URL pattern that would allow me to make a button in my web application that when pressed will launch the native application I wrote in Icenium.  There my user can scan the barcode.... and there my logic falls apart.  What I'd want to do is send the scanned data back to the web application and put it into the input it belongs in on the page the user is currently on.  But I don't even know of a way to "send the user back to the web page" without opening another browser tab which is not at all what is desired.

So all of our thoughts have been on if we can someone put the web application inside of the native application (framed in?) and therefore because it is in the frame the application can somehow know to go from the scanning camera back to the framed in application.  

I'm a big fan of the power behind what I've seen Icenium do in demos (keynote).  But before taking the plunge and diving into it, I wondered if anyone could even give me a hint on if I'm trying to do something outside the scope of a hybrid application.

Thanks,
Brent

3 Answers, 1 is accepted

Sort by
0
Steve
Telerik team
answered on 26 Nov 2013, 02:33 PM
Hi Brent,

Indeed Icenium can help you utilize the camera of a mobile device and there is a BarcodeScanner plugin that could be used for scanning a barcode. Sending data from mobile device to your server is easily accomplished by exposing your data via a web service and using jquery ajax requests. In short creating a hybrid app that scans a barcode and sends the data to a server can be accomplished.
However in order to know which is the user that scanned specific barcode, you would have to implement some kind of authentication. The user would also need to have your app installed (or the link should point to the app in the respective App Store so it could be installed).

Technically speaking there doesn't seem to be a culprit to prevent you from achieving the scenario you described, however the workflow is a little bit unusual. Users tend to be given the option to either browse your site or do their thing through an app on the device. Switching between both could be confusing and undesired.

Regards,
Steve
Telerik
You've missed the Icenium Visual Studio Integration keynote? It has been recorded and posted here.
Looking for tips & tricks directly from the Icenium team? Check out our blog!
Share feedback and vote for features on our Feedback Portal.
0
Brent
Top achievements
Rank 1
answered on 26 Nov 2013, 02:43 PM
Steve,

Thank you for the reply!

I completely agree that the proposed flow is not normal--but I'm in a position where I have little control over that.  The user can manually enter data in the web application (the way it works today) and not use a native application to scan the barcode if they don't wish to do any jumping around.  The business team looks at the scanner as an enhancement if the user chooses to download that application.  

Knowing what user did the scanning will be handled by a one-time setup on the native application.

My problem, and the main reason for my initial post that I probably did not convey well, was that I don't believe it would be possible to take the user from the native application to the open web page.  Upon successful scanning I want to switch from the native application back to the web page the user was on (without reloading/refreshing).  I can handle filling in the scanned content without a problem but getting the user back without them having to navigate back seems to be impossible (in my research).  So my other thought was putting the web application inside of the native application but then it appeared that my challenge would be having a button in the web application that navigates to the scanner since the web code will not have any knowledge of the native application pages and therefore have no ways to say "navigate away from this web-view page and to the page with the scanner on it".  Does that make sense?  
0
Steve
Telerik team
answered on 28 Nov 2013, 03:17 PM
Hi Brent,

Thanks for the clarification. Unfortunately your research is correct, navigating back from the app to the browser would have to be user initiated and even in that case, you would have to open a new browser/tab with the scanned information.

Regards,
Steve
Telerik
You've missed the Icenium Visual Studio Integration keynote? It has been recorded and posted here.
Looking for tips & tricks directly from the Icenium team? Check out our blog!
Share feedback and vote for features on our Feedback Portal.
Tags
General Discussion
Asked by
Brent
Top achievements
Rank 1
Answers by
Steve
Telerik team
Brent
Top achievements
Rank 1
Share this question
or