layer testing instructions
Before requesting publication, it is very important that you have tested your layer both on our API Test Page and on your phone (using the Developer Settings). You will only be able to request publication if your layer has successfully returned a response with POIs on the API test page.
For Vision layers please follow instructions found here
Third party layer content:
Please make sure that the layer content meets the terms and conditions for developers/publishers.
General Layer definition:
- Short description & layer Title
- Describe the purpose of your layer and the location of the POIs clearly, e.g. 'Find hotels in Paris', 'Bus stops and bus schedules in Dublin', 'Windmills in the Netherlands', etc.
- layer title should not be longer than 18 characters.
- The length of short description should not exceed 60 characters for good user experience.
- Detailed description
- Goal of your layer, e.g. find the nearest supermarket, find bus stops and show bus schedule, etc.
- Location of the POIs, e.g. Amsterdam only, New York state, Alps, Scandinavia, Santa Barbara university campus, all over the world, etc.
- If your data source is user generated, please mention this. E.g. "This data is taken from www.worldpeaks.org. You can add mountain peaks on this site.".
- If your layer is temporary (e.g. for the duration of a festival) please inform the user.
- Please mention it if users interact with your layer (e.g. submit POIs, give a POI a rating).
- Please also mention the data source if applicable, such as whether you are using official datasets or not.
- Layer type
- Generic 2d: Use this if you only use default POI icons or you have uploaded customized POI icons on the developer site. If you only use default POI icons, please set POI type to 0 as well.
- 2d and 3d objects in 3d space: If you want to use 2d images in 3d space, please return "object" dictionary in JSON response.
- Keywords
- Try to come up with the right keywords that can cover the content of your layer. Therefore, your target audience should be able to find your layer easily.
- Tips: Add keywords in English for foreign users if your layer is also useful to them.
- Country code
- Select the countries in which the POIs of your layer are located. You can select multiple countries, up to a maximum of 20.
- Country code 'international' can only be used for layers that have user generated input and can thus contain POIs anywhere (e.g. Flickr) or for layers that have POIs in more than 20 countries.
- Local (Bounding boxes)
- The layer should be made "local" if all (or most of) its POIs are clustered in one city/region. You can make your layer local by defining one or more bounding boxes on tab General. This will make your layer more visible to users who are in that region, since this layer will be shown under the local tab under layer galleries.
- Please do not make your bounding boxes too large. Users should be able to find your POIs from anywhere within the area covered by the bounding boxes.
- This will also make layer review on our side a lot faster since quite often we could not find POIs that are only available in very specific area of the country.
- Category
- Please read Categories page and make sure that your layer is assigned to the right category so that end users can find it easily.
- Layer Icon
- 64 x 64 px square image (no border effects or round corners. A mask with 4px radius rounded corners will be applied automatically)
- Minimum API version
- Please make sure that you pick up the right minimum API version. For Layar Vision enabled layer, this must be v6.0.
Testing on the API test page:
- Valid JSON response
- Please make sure that only the needed JSON keys are returned in the response. For unused optional parameters, remove them from the response or return default values.
- Please make sure that no extra strings returned outside of the main JSON response body.
- Please make sure that the valid JSON response is returned. POIs should be returned or a custom message should be returned when no POIs are found.
- Layer with error messages like, "layer provider not available", "error in validating JSON response", "layer name mismatch", "Error 404", "no content available"etc, will be rejected.
- POI "id" should not be null or have the same value.
- POI imageURL is not mandatory, however, the provided imageURL should not be broken or redirected.
- For better user experience, we strongly recommend that no more than 50 POIs are returned in total. Pagination is preferred with 10 to 15 POIs returned per getPOIs request.
- Filter settings are functioning well
- Search text - Make sure that you have tested both keywords that should / should not return POIs.
- Range Slider filter - Make sure that only POIs that are within the defined search range can be returned.
- Checkbox filter - Test each check box separately to make sure that POIs are returned as expected. Test the situation when no Check box is selected. In this case, no POIs should be returned.
- Radio button filter - Test each radio button separately to make sure that POIs are returned as expected.
- Slider filter - Test whether POIs are returned within the selected range.
- Test a few combination of different filter settings. - Quite often, filters work properly when they are tested separately, we do see many errors when it comes to usage of combination of filters.
- No results case
- Please return a custom message to the user when no POIs are available at that location.
- Examples of acceptable custom messages when no POIs are found are:
- If your layer has an adjustable range slider or other filter settings: "No POIs found, please adjust range." or "No POIs found, please adjust the filter settings."
- If your layer has no adjustable range slider nor other filter settings: "No POIs within range, please try a different location" or "No POIs available at the current location."
- Please note that different custom messages can be returned based on different reasons why no POI is returned.
- Actions (Some of the actions could only be tested on the Phone.)
- Telephone nr link
- Check whether the format is correct. Should use intent "tel:" in front of the real telephone number. E.g. "tel:+31203201617".
- Make sure that there is a valid phone number. Otherwise, do not show the action.
- Email links
- Check whether the format is correct. Should use intent "mailto:" in front of the email address . E.g. "mailto:info@layar.com".
- Make sure that there is a valid email address. Otherwise, do not show the action.
- Website links
- Check whether the format is correct. Should use intent "http://" or "https://" . E.g. "http://www.layar.com/"
- Make sure that there is a valid web page address. Otherwise, do not show the action.
- Audio links
- Check whether the format is correct. This value is different for distinct API versions. If API version 3.x, should use intent "audio://" to replace "http://" in the file location. E.g. "audio://www.layar.com /layar_audio.mp3". If API version 4.0 or above, it should be http://www.layar.com/layar_audio.mp3 and contentType is audio/mpeg.
- Make sure that the audio actions are working. Otherwise, do not show the action.
- Please note that all formats supported natively by the device are supported. For cross-device compatibility, mp3 files are best.
- Video llinks
- Check whether the format is correct. This value is different for distinct API versions. If API version 3.x, should use intent "video://" to replace "http://" in the file location. E.g. "video://www.layar.com/layar_video.mp4"; If API version 4.0 or above, it should be http://www.layar.com/layar_video.mp4 and contentType is video/mp4.
- Make sure that the video actions are working. Otherwise, do not show the action.
- All formats supported natively by the device are supported. In order to ensure cross-device compatibility, mpeg4 and 3gpp are best (480x320 resolutions). Ensure your video is encoded for http streaming, including progressive download hints.
- Other action.
- Since Layar v4.0, more actions are supported. Please make sure that they are implemented according to the API documentation.
- Telephone nr link
- Auto-triggered actions
It is possible to fire auto-triggered actions within defined range. Please think carefully when you want to do this and ask the following questions to yourself:
- Does this Auto-triggered action will enhance the user experience ?
- Does a user really want to see it even if this auto-triggered action is fired without warning? This is quite important since not every user knows that they can control whether they want to see this action without being asked. Therefore, sometimes it might be very annoying if certain unexpected/unnecessary actions are launched.
Testing on the phone
- Look and feel
- Check the color scheme of the layer to make sure that texts can be read easily and clearly against the background.
- If custom POI icons are uploaded, please check if they look good in the reality view.
- Actions
- Please test all actions, especially the audio and video links.
- 2d and 3d objects
- Make sure that 2d and 3d objects can be loaded successfully.
- Play with the distance settings and make sure that you have chosen the right size and angle for the objects.
- Please note that reduced link should contain simpler (smaller file size) object than the full link.