I've uploaded and hosted the contents of "01_ImageTracking_1_ImageOnTarget" folder as a html webpage and the URL link of that html webpage is inserted in the architectView in C# code as:
Now when I am running the app, it shows alert message of (404-Not Found) for architect.js. And then nothing works. only the html css content is displayed with camera as a background. But AR not working.
*Note: I have included the Wikitude SDK in the App. As per the documentation, the architect.js library is injected on runtime by SDK.
So why it's not injecting this library upon changing the sample folder's location from local to URL?
Waiting for the solution to this problem. Hope someone from your technical support team help me soon.
the 404 return code is expected behaviour and will not affect your experience. I guess there is something different not working from your project setup. Hard to tell from your description, but the 404 should definitely not be of your concern.
Nice to see your reply. For your assistance, I have illustrated the problem in a picture below:
Now its maybe enough to understand the problem. Same app, same SDK, same configuration, same sample folder, same html css js coding, same everything but only the path to index.html is changed in C# code.
When path is local folder, it runs perfect.
But when path is online webite on cloud, it displays everything except the AR functionality and a 404 error of architect.js.
Now I suggest you try to do the same and figure out where the problem is. Its a wikitude xamarin android sample which is available on github from wikitude. I just hosted the first sample folder contents as a online cloud website/webpage.
Kindly figure out the problem and help me solve this situation. I will be waiting for your response.
You can cn find details on the architect.js here:
So as mentioned by Phil, you don't need to worry about the 404 of the architect.js.
Thanks for sharing the documentation link. I understood the architect.js injecting phenomenon. But then why AR is not working? even the (tracker.onTargetsLoaded) function is not calling/triggering.
What should I do now?
which platform and device are you using for testing? A wild guess: iOS is restricting insecure content from http sources and requires sources to be loaded via https.
I am using:
Now what should I do now? Help me please. I am feeling helpless :(
Can you validate that the resources are actually loaded and available to the SDK? Is there anything blocked from your hoster? Do you get any error message at all? Do you see the camera stream and the grey bar at the top?
Yes, the camera stream is perfectly working and after 5 - 6 seconds, the web page also loads with the top grey bar with "Loading..." text. Then the 404 error occurs with an alert message. After pressing OK button of alert message, nothing more occurs. Even the "Loading..." text is then not converted into "Scan target... etc" neither the AR works on the target.
Kindly tell me one more thing. (*specific to Visual Studio Xamarin.Android project) :-
Because from the same procedure, the AR works fine when the assets folder is located within the project. Only the problem occurs when the folder is hosted on internet.
Now what will be the next step? Waiting for your kind reply.
Someone Help me please...
I'm afraid I cannot run any Xamarin.Android projects at this moment, but I tried loading a remote architect world with Xamarin iOS 7.1 as well as the regular Android SDK 7.1. Both worked out fine. Since the Xamarin component simply forwards its calls to the regular SDK, I would expect Xamarin.Android to behave the same.
There's two things I would like you to try.
Try loading the following remote architect world using your Xamarin.Android app.
Try loading your architect world using the regular 7.1 Android SDK. You can get it here. It contains a sample app that runs out of the box which allows loading a remote architect world without making any code changes.
Thank you soooo much for your recommendations. I tried both. Both works perfect.
The remote architect world URL which you provided me, I inserted it in my Xamarin.Android C# code to try to load it. And it worked. Secondly I tried to load it in the Sample Wikitude App Custom architect world, and there it also worked absolutely fine.
Now I have came to know that something is wrong with my remote architect world, or with the web hosting provider which I am using.
So at first, lets check out my architect world for any error/bug which is loading from the remote URL but AR not working with the error of 404. (It works fine when that architect world is embedded within app storage as a local link.)
Here's the link of architect world as a zipped folder:
You can check that it's same as the samples provided by wikitude on github for SDK 7.1. I have made no changes in that architect world. You can check this zipped architect world for any errors and/or by uploading/hosting it to your wikitude's server to test it as s custom architect world URL.
If the remote architect world have no issues, the we have to check what is the issue with the web hosting provider I am using.
Here's the link of hosting provider: somee.com
And here's the link of architect world hosted on there server: http://artesting.somee.com/assets/01_ImageTracking_1_ImageOnTarget/index.html
I want to again thank you to take me closer to the issue.
Now waiting for your response when you try the above tests and provide me the solution??
I have pointed the issue. The issue is with the Hosting provider server. The 404 error is of magazine.wtc file. It means the server is not able to understand which extension is .wtc and how to respond to this extension file. That's why it's giving 404 error.
Now I am creating a new question/discussion for that .wtc extension and marking this as solved.
Many many thanks to all of you guys who respond to me to identify the problem.
You guys rock...! Thumbs up. Cheers.
I just found the solution. The details are as follows:-
#1. Make a text file with the following lines of code:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <staticContent> <mimeMap fileExtension=".*" mimeType="application/octet-stream" /> </staticContent> </system.webServer> </configuration>
#2. Save this Text file as Web.config
#3. For Windows IIS hosting server: Add this Web.config file in the specific folder in which all the unknown file extensions are placed (e.g. .wtc, .wto, .wt3 etc...)
Hope this solution helps to those who are using Windows IIS web hosting server for remote architect world.