App Inventor 2 - WebViewer detecting changes - app-inventor

I am trying to integrate MobPartner ads in my app, the ads from MobPartner can be displayed from "Pools" which contain several ads which automaticly scroll sideways and are set which an individual click link. The page with the ads looks like this, when I set the URL of the WebViewer in AI2, the ads display and scroll as they should.
The problem I have is detecting a click on one of the ads, this is the best I got to:
If a user would click on one of the ads via the WebViewer it will redirect them to the automatic URL set by the advertiser. I will then use the link and set ActivityStarter to WebViewer1.CurrentUrl and start the website full screen instead of the ad resolution (320x48).
I would like to know if there is a way to detect any clicks within WebViewer so that I can start ActivityStarter faster with the link. If not, is there a way to check the URL of the link clicked in WebViewer before the target website loads. In my opinion the timer (set to 1000 interval) is an inefficient way of checking if an ad is clicked. Anyone able to answer my questions above or provide a way of improving this code? Much appreciated.
PS: The HomeUrl for WebViewer has been pre-defined in the designer as well as the ActivityStarter "Action".
Thank you!

There is no possibility to detect any clicks within the Webviewer. The only thing you can detect is an URL change with the Clock component, and this is what you are already doing.
What you could do is to reduce the timer interval or instead of opening the webpage with the Activity Starter, just stay in the Webviewer and set its height and width to fill parent, which is -2 in the Blocks Editor, and hide all the other components on the screen to be able to view only that webpage in full screen.

Related

How do i click on a web button that appears multiple times on a page and how do I click on all of them?

I am testing a web page and specifically a web button. In order to get a helping answer I'll provide all of the information I can on it. I am specifically testing the "Like" button on a website (Webstagram.com) that is meant for you to view and operate your Instagram page from your desktop. 20 different pictures are displayed on a page and each picture has its own "like" button assigned to it. I can't identify it by "like" and in the outerhtml there are different values for each one. How do I write a script to identify each one. Please help I would GREATLY APRECIATE IT!!

Create Page custom animations in Windows Phone 8.1 (Windows Runtime)

I would like to develop some animations for my pages or my page content. The approach of which one I should follow is unclear to me at the moment and I'll try to explain why.
What I'd like to achieve is to create a page (or page content) animation with a slide-in from right when navigating to the page and slide-out to left when leaving the page.
The slide-in part can be achieved with ContentThemeTransition from TransitionCollection. But what about the slide-out part?
I can't seem to know or find any good timing regarding when to fire a slide-out animation just before the page is about to be left.
I'dlike not to apply any animation to the page in such way that WP does by default (with some jump-out, jump-in effect). I'd like to be like BasicPage from templates with no animation but with custom animated content upon page enter and page leave.
How could this be achieved?
Thanks in advance.
I assume you are navigating from the page via tapping a button or something similar. Why don't you create a storyboard animation, start that from the Click event handler of the button, and call Frame.Navigate() when the animation has finished playing?

WP7: Is it possible to intercept the backstack before the journal thumbnail is created/stored

You all know the Windows Phone backstack right. If you go through some apps, tap the Home key after starting each app. Now tap and hold the Backkey to see the Backstack. You can now see some small images of your apps, and can pick which one to go to right.
Question:
Is it possible to intercept before the backstack image is created? I have tried to blur my page in various events (include OnNavigatingFrom) to no avail.
My guess is some other event (probably something we don't have access to) is triggered and a bitmap is created, because when you use the Backstack to navigate you can just see a slight transition from the saved image to a real page IMO.
Does anyone know if its possible to intercept or manipulate these images on the backstack?
Example screenshot from WP emulator of the Backstack thumbnails
Following my comment, I've just tried this:
Set a breakpoint anywhere in the code
Start the app with the debugger attached, then let it reach the breakpoint
While the execution is stopped by the debugger, long press on the back button
The task switching UI is displayed even though the managed code execution is stopped
From there, I think we can safely conclude that the task switching and the thumbnail are handled entirely by native code. Therefore, there's nothing you can do.
I recently wrote a blogpost in which I discuss the ways I tried to hide data from the application snapshot. (You can read it here: http://corstianboerman.com/trying-to-hide-crucial-data-from-an-application-snapshot/)
The outcome: You just can't hide it.

Windows Phone Application - Start page depends on FileExist in isolated storage

I'm developing application that start page depends on file existing in isolated storage.
If file doesn't exist my application shows some form to setup configuration, but if it exist I wish this page will not be diesplayed.
For now I just load configutarion page but if file exist i use NavigationService to navigate to proper page on pageloaded event. The problem is that after I play with my app and hit back button it goes to configuration setup and because file exist it navigates me stright to my app again. I despite the fact that setup screen blinks on the application launching.
So my question is - how to setup startup page depends on some condition ?
The advice that I've heard is to use a UserControl on your startup page - then toggle the visibility depending on the condition you have. That way you don't end up with an unwanted page in the backstack and you get to fully control the UX.
The example I heard it with was a login page - not something you want on the backstack usually - but something you can easily check a bool to hide/show the user control.
The place I heard it was this video from Mix 11: Expert Lessons: Top Tips for Building a Successful Windows Phone Application. You can download the code to the demo (it is the first demo in that video) from the bottom of his blog entry here (which gives some more detail): Demos from my Mix 2011 session - Part 1: Navigation Tips
There is no way to launch different page on some conditions.
There are methods to manipulate Page Stack in NavigationService class, so you can remove setup page from history and app not will be navigated to it when user tap back button.
For fighting with page blinking you can put an image (the same image as splashscreen) above your page, and hide it when right content loaded

Dashcode question - OnClick image to fullscreen?

I have a web app I'm building in Dashcode, currently every thing is working as advertised. I'm using the browser template and was able to modify it a bit, got the xml working to connect images and their description. Now I want to add a simple OnClick event that sends the image to fullscreen but I can't find any documentation for that. I'm pretty sure this is easily done so I'm missing something here? Any help greatly appreciated.
Tom
Taking over the screen is a bit complicated (if your talking about a full screen experience like youtube), but full screen in the browser window is defiantly possible. The simplest method is to have the click event open a link to the image location. This would load the image in full resolution in the browser window. A more elegant approach would be to load the image url into the source of a image dashcode object. and have that objects visibility only appear overs the whole web app when the Oncick event occurs. If you are talking about a built in function in dashcode to achieve a full screen/browser image, your out of luck.

Resources