Android/iOS Wikitude PhoneGap Plugin - Custom POI CSS/styles - android

I've spent days searching Google, forums, everywhere for any direction but have not been able to find anything remotely close to answering my question or even giving any clues where to go from here so I am hoping that one of the wonderful community members would be able to assist me as this has been frustrating me for nearly a month trying to figure everything out. My question/problem is this: As directed by my boss at work, I was tasked with creating both an Android and an iOS Augmented Reality application. I decided that PhoneGap utilizing the Wikitude Plugin for PhoneGap would be the best solution for us due to it being minimally Java-based and primarily HTML/CSS/Javascript-based which is wonderful for our purpose since our Web Development department are at home with HTML, etc. Anyway, I digress.
After a large amount of confusion upon first downloading the Wikitude PhoneGap plugin, I was successfully able to get the foundation of our use down: using the Wikitude SDK's "POI From Web Service" to dynamically push out the POI markers to the device for the GPS locations around our campus (I work for a university) via a dedicated JSON URL sitting on our web server, so that part was very straightforward.
Now we come to the 3 big issues that I desperately need assistance with as they are the core functions necessary in our application.
1.) The university's campus is home to 30 buildings campus-wide. In our JSON file we have the coordinates for each of those 30 buildings..however, when I load the JSON data from our server on my Galaxy S3 test device even when I'm at home (3 miles from campus) and I load up the app all of the POIs being pulled down from the server are crowded together/overlapping (you can only read the first 8 characters of the closest POI's name which any text after the first 8 characters is followed by three dots (...) and also you can only see the 8 characters of the closest POI to you because the closest overlaps all of the others making the text of the others unreadable) so I need help with the "crowding" that is occurring. How can I space them out more or have only the N closest points shown at any given time?
2.) The second issue that I've been trying to find more information on is how to customize the POI markers (such as color, size, shape, making it an image, etc.). Is it via the local CSS in the POIFromWebService folder? Is it via the index.css file from the main index.html loader page?
3.) My third issue is regarding viewing POIs in the AR View. In the example of the actual Wikitude app available from the Google Play and Apple App Stores which lets you view local attractions, etc. how would I be able to 1. code the distance from where I'm at to a given POI marker and 2. have the description/more information area be displayed on click of the POI as in the Wikitude app?
Assistance with any or all of these questions would be a VERY VERY huge help as right now I am baffled as to where to go from here even after spending days scouring the Internet searching for answers.
Many thanks to all of the members of the Stackoverflow community who would be able to help me resolve this issue.

Check if the phonegap location you are getting is the correct one. To do this see: http://docs.phonegap.com/en/3.0.0/cordova_geolocation_geolocation.md.html#Geolocation.
Title is appended with a ... if it gets longer as 10 characters. See marker.js:30 and adapt it to your needs.
Every object in the AR scene is created by calling the ARchitect JavaScript API. It allows you to create locations, GeoObjects and define how the GeoObjects are visualised. Please have a look at other examples and the JavaScript API Reference. In the mentioned example the markers are created inside the marker.js file (see function Marker(poiData))
There are additional examples included in the main SDK package (for iOS, Android or Architect Tools) that demonstrate how to add a distance slider, radar and detail page. Please have a look at those at http://developer.wikitude.com/download. These example will make it into the phonegap packages in the future.

Related

MapBox Find terrain class by coordinates in Android

I spent several hours looking for simple solution and still haven't found one.
MapBox style editor uses this simple feature. That you can hover and click over map, and it shows small popup stating all terrain classes you enabled in your map.
Question, how to do it in Android version of MapBox given I have installed my style. Now I want click on any place in the map and get the same popup stating, for example, that this is building, woods, background here. Or other place would satte, that this is major road.
This IS doable as MapBox studio itself shows. i can't believe it uses some API not available for anyone, as this is one API no map provider gives, while still able correctly draw terrain. What so complex to add this API?
And NO I am not interested in address. I am interested exactly on terrain, for simple task - distinguiosh water from non-water, road from non-road, building, from non-building, don't care where it is by address, so reverse geolocation does not work. Or simpler - I need SIMPLER geolocation, than address.
Your questions kind of confusing but I'll try and help. If I'm reading correctly, you are trying to create an Android app that uses an API similar to Mapbox Studio that allows the user to select/distinguish the difference between objects on the map such as buildings, water, forest, etc.
If this is the case, then first you must understand that Mapbox Studio is using OpenStreetMap data to distinguish between objects. These objects are stored in a database with tags. It's tough to explain so i'll just leave a brief reading wiki page that might help.
To my knowledge, there isn't any API's specific to Android that will give you the kind of information you're looking for. However, if I was in your dilemma I'd take a look at the Overpass API as it's a complex query tool that allows you to send coordinates to it and it will return all the tags (such as building or water) at that location within a JSON object. From there you can parse and use the data in your app. It is very powerful so I suggest reading up on how to use it and test using a website called Overpass Turbo, that's if you decide to use it.
Nevertheless, I hope this helps and I understood your question correctly.

Dynamic Invoicing/Receipt Reporting tools for Android?

I m a Doctor ,(Ophthalmic) i.e Eye Surgeon learning Android Online out of interest, This is my second question on Stack Overflow & I realize that this is one of the most efficient way of not getting stuck and learn from experienced developers & Move Ahead So thank yo SO.
My Last Question was about android so is this one.
I m making a simple application on mobile in which user is going to store his inventory & client details. Now the next requirement is the user should be able to generate invoices/prescriptions from the application itself.
When i made this application for Desktop using Java & Swing , I had used Jasper Reports to dynamically pass Data from J-Table & Other parameters usin a hashmap and passing it to the jrxml design template which i designed using ireport Designer community.jaspersoft.com/project/ireport-designer.
I want to do the same for android, not that i did not search or try something before asking a question up here. I couldn't find much documentation & Tutorials to do so.
I m new to SO , hence i don't have enough reputation to insert more than 2 links in the questions this i m marking the links bold & italic to be viewed and explored.
This stackoverflow.com/questions/8890340/android-what-are-the-good-reporting-tools-to-design-and-generate-reports-from Question on SO is asking the same thing.
The answer to it is itext & generation of reports over server.
So can we use itext the same way in android as we used in java SE applications ?
Also i have found other alternatives like
itextG : itextpdf.com/product/itextg
Jaspersoft Mobile - Android Sdk : community.jaspersoft.com/project/jaspermobile-android
Regarding itextG or itext-core i did not find too much other one video on youtube and simple documentation but that i guess is just a PDF creating tool, couldn't find any tutorials on it.
Please help me if you find anything more on it.
& Regarding Jaspersoft Mobile, If m not wrong says it uses Jasper Server for creating reports etc. which means its again network dependent so it is time consuming as well as one cannot generate reports offline ?
But I m sure there are solutions available because there are android applications available in market which are generating reports taking data from SQlite. Until and unless they are native apps there is a solution , Please someone help me out with what it is.
The apps on the store are
Invoice2go
Invoice Maker
& Invoice Maker is Remarkably Fast & Effective.
So Summarizing the long story short
Are there an easy to use offline reporting tools available for android and ios development with documentation & Tutorials to follow ?
Can we itext simply the same way we use it in Java applications?
There's a new standard for e-invoices. It's called ZUGFeRD and you can find more about it here. As you can see, there is a whole book in the works on how to create invoices with iText. The book isn't finished yet (although you may get an unrevised draft if you mail iText Group directly), but the examples can already by consulted here.
The idea is that you implement one of the following interfaces:
BasicProfile
ComfortProfile
If you implement the Basic profile, you can create the ZUGFeRD XML automatically, but you still have to write code to create your invoice. If you implement the Comfort profile, the ZUGFeRD XML contains all the necessary info to create the invoice. In chapter 5 of the book, we convert the XML to HTML using XSL. In chapter 6 of the book, we convert that HTML to PDF. That's a very powerful way to create invoices that (1) are future proof, (2) can be accessed by machines in an EDI context, and (3) are accessible for the blind and the visually impaired (Section 508).
iTextG is an Android port of iText. If you have iText code to create invoices in a Java environment, you can use the same code with iTextG. However: I would never create invoices on a mobile device. I would have the mobile device connect to a server where the invoices are created in a secure way.

Hyperlinks working while viewing page from web browser on PC but not on Mobile (Android)

To begin, my web programming knowledge is very dated. I learned some html/java back in high school about 15 years ago and for fun have decided to put it to use and help a friend make an offline web based html database for a collection of his data that up until now he's kept in nothing but word and excel docs. So there is nothing fancy here. I'm mainly just formatting and linking pages. And make a ton of use out of tables. Lame, I know.
Anyway, here's the issue I've run into...
I'm pretty much done. I've just been going and fixing mistakes here and there. Grunt work. Every so often I've tried to display it on my Samsung Galaxy Note 2 and been rather pleased with the results. I'm not using any program that alters the display for mobile or anything. Just straight html/java with a bit of css I've started to learn while taking on this project. So sometimes I have to pinch to zoom and make the page fit on my mobile device, but I'm not too worried about it.
The problem I've come across is that a series of the pages with tables on them don't appear to work correctly. Each table has links to anchor points further down the same page. On PC, these links function properly. But for some reason on my phone when I tap on those links they don't respond at all. Not every page with tables has this issue I should note, only a small cluster.
All I'm using for code is an 'a href' tag in the table leading to an 'a name' anchor further down the page.
Any ideas?
You might be using HTML5, a tags don't have a name attribute.
try using:
id="titleofyourchoice"
instead of:
name="titleofyourchoice"

Image recognition for Android augmented reality app

First, sorry abour my poor english.
I'm planning to build an augmented reality app for android mobile platform and the main feature is the ability of the user to take a shoot of a shop and the application recognize the shop that he is photographing. I Do not know if the best option would be to use an image recognition api as many existing, but I think it would be something more specific. Maybe own a bank of images would help.
My plan was to have a database of stores with their locations and use one of many tools for image recognition and search in my database to the same location. But I found that all search engines images (kooba, iqengines, etc.) are not free and not a little cheaper. So would a tool that could use a limited catalog, like shops images in a shopping mall for example and send photos of smartphones (both android or iphone).
Can someone help me get started?
I've been doing something similar for my dissertation at University. I developed an application which detected signposts, read the content on them, then personalised / prioritised it depending on the user's preferences (with mixed success).
As part of this I had to look into Image Recognition.
Two things you may want to look at are:
The Qualcomm QCAR SDK. This was a little bit too image specific for what I was after, but if you were to do it on a small range of shops it may work. This would require a collection of shop images to match against - I don't know how successful it would be.
What I implemented used JavaCV (a conversion of OpenCV), which also has an Android conversion. It seems to allow for image recognition a bit more generally than the previous option which is why I used it. It would require you to run your own training to create a classifier though (unless there is another way of doing image recognition within it). But there are a number of guides which can help with that.
I used it for recognising signposts with reasonable success off just some basic training, though did tend to recognise a number of false positives.
Within my application I then used location to match up with previous detections etc.
Hopefully these may get you started.

allow users to create forms within android survey/data collection app

I'm trying to develop an Android app that could be used by advocacy groups or campaigners such that they would be able to create their own forms (surveys) for which they can go out canvassing and collect opinion data from people who don't have Internet connections and thus can't take surveys/polls online. Could also be used at events or anything else that requires data collection "in the field"
The benefit is allowing data collection on the spot without having to transfer data from paper to the office computer by hand.
I've been looking over this tutorial by Frank Abelson: http://www.ibm.com/developerworks/xml/tutorials/x-andddyntut/section6.html
And have also been pouring through the Open Data Kit, but the ODK is a little more intense than I am prepared for and the Abelson tutorial doesn't discuss much how users could create their own forms.
I suppose users could just create their own XML files for custom forms in the office and store them on the server, but I was wondering if there was a way for them to do this on the Android app?
Just a hint about possible architecture or simple resources would be helpful, I am having a hard time picturing the solution at the moment.
i'm one of the developers of open data kit. odk has been successfully deployed by organizations all around the world for exactly what you describe.
we have a graphical form designer (and good alternatives in purcforms and xls2xforms), a server to host the forms, and an android mobile client (and good alternatives in javarosa). all the pieces are free, open source, and are driven by an active community.
if you could list what specifically about odk doesn't fit your needs (say, a need form design on the phone), i'd be could recommend alternatives...
ODK is a fantastic open source solution. A potential commercial alternative you can also try is Canvas at http://www.gocanvas.com which allows you to replace paper based forms with your mobile device.
It currently runs on Android, Windows Mobile and BlackBerry with iPhone and iPad support coming soon.
To get a quick overview of how to use Canvas:
Build a standard data collection app in 5 minutes and see it running on BlackBerry
Build a signature capture app in 5 minutes and see it running on Android
Hope that helps some,
-Chris
You should look into Fulcrum. I believe there is a 30 day trial period see if this software works for you. This is a one stop shop for mobile data collection teams. You can easily build your data collection forms right from your web account to include photo fields, text entry fields, choice fields, form sections, and repeatable sections. Repeatable, meaning parent-child relationships within a single data point.
They even have an App Gallery with a exemplary apps (forms) that allow you to use as a sort of "cheat-sheet" to get started. Here is the political canvassing survey they posted.
-P.Reyes
Check my project here: https://github.com/AndreiD/surveylib
PROS: Simple solution, open source, without any overkill, you don't have to display any logos, it doesn't cost a thing, it's easy to be extended, material design etc.
CONS: You must have the server part, for the transmission of the answers data.

Categories

Resources