Industry sign banking maryland pdf mobile
Thank You handsome um good afternoon everyone my name is Kai and from the foxy software company so this is the real user case we developer the mobile application so the largest the world a largest the home improvement company in the Union the US so it's done by later last year and early this year so they're already being used by them and they start come to us to another department they want to looking for the similar solution so my presentation have a recession first one introduction foxy just one fly second why is what is the real user case for this project and what we learn and what we did in human the word doing this project so first one let me introduce myself my name is Kai I lead the engineer team in the foxy weather to engineer Gohan leading the engineer team focused on the core technology that means everything from the mental deal with the PDF is from my team and also we to developer the SDK products so they can be Orion by the another applications and also deal with some of the customer base the project so foxy foxy is the world acting PDF solution wondering in this world we didn't we didn't have many many chance to prevent ourselves high in the PDF circumference we offer pretty much the full part of our related a PDF for instance like a we provide the SDK solution to the customer so they we can developer their home petition based on our SDK so one of the famous our sdk business is used by the google chrome so in the chrome you can view the PDF many many years actually is based on our technology the last year we work with the Google open source that part that part is part of partial our technologies so it's open source you can use it is they call the PD fume if you use a C or C++ language so this cross-platform solution another project another of Prada we have a many many user we call the general user product it's the reader writer we call the centum this is the pre installation in our HP asia and a soothe their pieces so that means you can use our product reinstallation by their platform so we have a I don't know you can agree number base hundred million users right now so that is the one slide to introduce foxy for this user case basically the challenge from from to us is the user they wanted developer their own enterprise mobile application the application you've deal with the PDF file but they don't want the developer by themselves they want you sort of the view components and they can easily integration to their enterprise applications that's why they won the foxy provide the new components we call the new components that means pretty much like a similar in the product but is not had the user interface is very limited user interface and this usually them in the user interface can be customization by the user that is the one challenge we need to provide the view components secondly why is we need provide the view components pretty much do everything you wanted to deal with the PDF files and the sort of ones because they have their own enterprise mobile application you know the mobile device have a limit computing power and also limited memory so their enterprise application already take a lot of resource how we make sure of a new view components can be part of their enterprise and you know taken in limited resource but still have very good user experience this is the challenge to us the first one I want to show you just you're a real user case this is the from the customer as customer what missus together the list a cup of the user case and the later on we'll show you our overall the product so the user case is kind of the simple they want to see oh I want to view the final document I can view the PDF you just give me the components I didn't do anything I just integration you view component and I can view this document so everything how to deal with the PDF is your clock so they give us some of the use case I wonder some of the button like this one button a I can go back to my enterprise application if you don't save then you can discard on sleep the data if you already save it then I just move back to my enterprise application sorry I move this there application name button B that means okay I want email the document to our customers so they have an email function button C that means Sivas to another name but this from the menu from the user experience is quite as simple but they say our simple is good you deal with most of the PDF I will show you later on what the issues were we deal with this one use another user case it's generated a document the content document is for instance like some of the menu the form they need a failure is already near the PDF for instance for this one they generate the documents tear the PDF document they can save as draft or they can save as the final but what is the difference save as the draft that means you still can add about later on if you want to make any modification but after you save it as a fan or they don't allow you to modify this talking me anymore and and also when you see where as fellow they do the slandering about this PDF file so that's why on this is the drop down menu you have to auction a menu item eight you see where as flat and otherwise the save as to the final you can see a little bit of different that means do you want the email to the you users draft like most the case you don't want to email to the user but final you want and also the buttons see you can see the button see here that means you can select the free form to join on the PDF used for the signature capture and this select that means you release it you don't need to select it and the button teal and you miss the free phone line on the PDF file and deselect the to erase this is the whole request from the user and a button eat here that means to clean all the field in the PDF in that means your TCO a lot of useful information you want to clean all of them start from the scratch you can just clean this button again from the user standpoint this is the quite of simple this case and also for the cumene Summa out the function available for the view components special for the signature they wanted to mean to the Seinfeld America sign name and zoom out and they look at house going on for overall thumb and get some media and the support the scrolling to screwing him from the top to the DA from top to the bottom to the left to the right and also suppose continues view the navigation you can view your document and get scooped from the top to the bottom and you can continue view the items and actually when we developers is a function quite a symbol from the user standpoint but we get a lot of the trouble in the beginning if we didn't use one technology I will mention later so that is the kind of the user case from the users standpoint and this gesture for the overall was what the product looks like you can see this is just one of the screenshot I take from the mobile application basically we developer this view components we need a developer for the iOS and under a two platform to them you know sometime you know the iOS is they have their own developer case is quite of the useful you can do the tasking make sure the iOS applications works but Angelo is kind of challenge to us there are so many device so many different voice under OS version and also they have a different CPU of some support arms I'm supposed x86 make sure all this works so testing take a long time for the Android device so for this the view components we developer the to iOS and Android for them both so the use case well up to the function we provide to them not only the view and also can provide the annotation and phone setting and function so customers wanted this annotation and fulfilling and also they want is fine on this document so this Prada overview components can tell some of the functionality for instance like putable test the form and the check box for the customer so we developer this one and give to them the K integration include their applications so this item I am mission that feel the boat has the form and the check parts those items I can show you later on when do some of the screenshot so this is just a world simple from the view components you can sign your name on the bottom you can do to mod and assign your name and also we provide this tours the user can use the irregular to fire in emulation tools to save the file all blend in the file so where they mentioned that when you save as the final they can do the flattening to so for instance like this tours we can do a lot of they're like a test editing document structure modification but most the time are in this one is a few of the phone and they used the case used to buy their and the price they wanted their internal user to feel whatever the information from the customers or filling the older from feel the phone and the save them and the data in the incorrupt integration with their application their enterprise application so this is the screenshot I take just to show the scenario when the user typing into their test to feel all the tester furious the audible that means they can import whatever the one input modify when they sift after draft but after the satisfied the info the data we can save as the final and we do the flanking call the slanting API to flatten the PDF another one function is mention that they have the enterprise application so in the price application they can pass the data to our view components the view components you do need manually to fill in all the data you can just take the data from the enterprise application and show you to the PDF file so that's why while the function we called the data injection or also we can call it the form generation we use this capability in this solution so PDF form commonly used as the template and the generator different the document with the customization a customer data so we use this approach so there will be significantly improve the solution efficient you don't need every data by including the data you can generate the data from other applications so while the land may be a lynchin mission this one later on one of the we include or we developer this we use the caching system is i taken the to screenshot the first one and the second one is different when you scroll down from the top to the button if you don't do the traction system you do are rendering a more data on the cash assistance you just every kind of real rendering the page most the time we figure out is the black page that means too much data need a real rendering so when you quickly scroll from the top to the bottom the issue the black page but if we can do the caching system on the mobile device we can rendering more data in the image in the caching and the when they scroll down and that quickly show the data's we don't need to re rendering again so that be very good user experience that is the one we learn worried about process mobile applications so you can see the top the figure 1 1 that means of a quick the school down there's no data here that means the sender requires chill the back end and the back end and oh you need the rear end early and we need to rear under the data to device again but this way you were already rendering in the caching and whenever you screw it down we can have a more data to fit in the device and to show you but of course you haven't control the workflow if you quickly is to scroll down to much pages and you will have a lot of the embody the requests on the backend you don't have to render it on the back end sometimes quickly scroll down the page you can you know them until you really focus on look at one page and you just need to read rendering that page to the mobile applications so this is the leg about another we improve the performance again in the iOS so if you look at the emanation I did when you lay in this the emanation this annotation you can see the disappear from the top to the bottom the one of the technology we use the code strip rendering strip rendering them use the iOS device I am not rendering everything on the same image on the seems cry screen actually it's a stripe under by the rule some of the fixed area so what i re-render I just calculate which area I need the real rendering if some type of the area I need to fix or remembering I just did by the sequence to do that that's why I'm when i delay this annotation so disappear in the top and and later undo the top so you can look at it so this is the world the technology will learn we have to do it and the later I will show you for the Android device we do the same thing like I ways to improve the rendering performance and also we use the multi thread user interface this solution is we separated the UI thread and the user interface interaction on the different earlier so when the UI respond will be instantly desert the prop just read handling will be mask mask used when example the user is go down the page so you deal with the user interaction there and the user friendly is different so foxy we have some thread safety incrementation technology so that one will be helped when we deal with the multi thread and the deal with the different UI for instance like a notation tasks and the test field can be happened asynchronously that means we deal with the test field first have a good user experience and the later on to do with the annotation and also for also by the user request they have an enterprise application when they pass the data to our view components most cases they don't want you receive their file on the local on the device they want adjust everything in the memory by screen the early encrypted this data you only need use data when you do the decryption and you don't need a decryption everything that is the usually use case from the user request that means when you deal with this data you have to read from the memory and you only have need to decrypt the data when you need and when you done everything have to remove from the memory so there's no any sort of party applications and catch this data that's why we call the encrypted the PDF data and it's kind of the stream from the memory another one we deal with it's called a sub area UI interaction so this is another emanation I assure you I do the checkbox quick small area and the scroll down the page and the roots go back check the box again so the whole thing we only need a rendering the checkbox changes and there nothing else very smoothly when I moved to the pager from top to down and the dance from the top nothing else change only the checkbox changed so this is the like a sub area rendering where we deal with the UI you to action so we learn I show you the user case what the request from the user what their challenged to us one of the challenge I mentioned we have to deal with coal make is called the view components so the user can use the view components it's like a sort of the product they can do all the PDF but we can customization like your user interface by themselves this is the world a challenge to us another challenge if we don't use the caching system we find a lot of the issues that means when you scrub scroll down what page from the left and right you have to rerender everything we render the whole image to the customer and the for often if you have a limited resource you see the black out page so that's why we use the caching system we rendering a little bit more data in the fashion and whenever they do the move the pages from top to bottom and or left it to the right we can have the exactly the data can sweetie ink when they do this going so the patient have a black out and when the screwing offset the changes it's the world lancelin will learn from the customers another one we call the cunning rendering this is the painting a particularly in the Android device remember an iOS device we use a coda stripe rendering technology approach this way is a for the Android device we call the titling rendering basically same idea we only have two rendering everything on the fixed size and every time if you make the change we calculated first well not really render everything we calculate which area get changed and the only render in that particular area usually you make it a change compare the Hopi map or hoe device but just a couple of small area to the change we only need a rerender that change so that provide ve
y good user experience and very smoothly when they make the change the last one we do a improvement I already mentioned a little bit that what called the work flow control the work flow control that means if you don't control I quickly or screwing down up top yeah schema allowed to the pages that's the request center the back end that you're rendering them most of they are not we had not try to show you device anymore they just scroll down quickly so skip a lot of pages if this page is waiting on the working for working queue to do rendering that now be slowed down hold the rendering process so we have a workflow control that means we find out which one is valid request on the back end and the rendering all made this one if you are so many quick pages skip and waiting on the queue which of get a read on we never render any so there'll be improve the workflow make it a very quickly for the user they quickly scroll down from many many pages and only when the focus of one particular page will be rendering that page okay so that's pretty much I want presented today so quickly catch what the use case from the user basically they want is view components this view components can be everything from the you from the PDF and a symbol to the user so they can really integrate second one they want these tourists can customization tour by the use case they can change their use case that they can customization to looked or by by themselves and make the view components this is the same like the components of their enterprise application they don't want to deal with different components by the different looking fear looks like not one from the product so that's why they wanted to but we know are very important that their use case is quite a simple base is used to buy the device mobile devices on they want a very good user experience and smoothly when you're rendering a look at so that is the basically user requires from us and we learn and we do a lot of different women to make sure they're available for them so because they are very happy about that okay any questions a community okay actually who is their customer right a mission that is that they are internal in the users so they have they are pretty much the largest home improved company there are so many many story in the US and the world wat so they have their internal users they want funded the application they can deal with the customer requirement is viewing the information all by the electronic device mobile device so their internal enterprise application can deal with some other document format but one of the most useful the document format is PDF file and also is a feel for the ball PDF format that's why they come to us and want us to develop one of the components give to them so they can integration with their enterprise application and they used by their internal users so their user base is type of thousands your lives please [Music] good question I don't have the ratio but we know one of the most important they used most useful features is the phone telling ya the the feel the form the capture their information and they want to save to the PDF format and also the flattener in the PDF file and the later on they can save them any other question yes please exactly this - customization version for the customer but we do offer the GA version the GA version that means you can download from the iOS store and restore and we are not only developers iOS and Android developer the Windows Phone mobile with reader - all the free you can download from whenever the condemnable I was you know Apple Store and your application store yeah whenever use such a fox a fo excited and that you can find it [Music] [Music] yeah that's very good question actually we have a to team have to developer by the different technology some of the technology we try to make it as cross pressroom but it's not really good by the user experience so for the iOS we have to use the Microsoft provider iOS developer environment the NGO will have to use indicator development some of the technology similarly is different like the world I mentioned in the IRS they call the street rendering basically that is the cup of role to rendering right but in the Android they have called a tiling rendering it's a fixed area it's a some rectangle area to fix similar paths they are different yeah we have to develop that is it's challenged by the mobile world you have to figure out how can I use some of the prajak and apply a developer cross-platform mobile solution but you are you have one together the best user experience right now we have to gather the best user experience that we have different a team to work on different mobile solution okay all right thank you very much [Applause]