I have a .Net MAUI app. I need to provide information of its usage to Google Analytics (GA4). Specifically, I want to show statistics of visiting the app's screens in the Pages and Screens section.
Currently, I can send events information using package Plugin.Firebase, but I am not sure it can handle Pages and Screens. I found the following statement about using Packages and Screens:
When you first access the report, you’ll see your data broken down
according to page title and screen class. This means you’re looking at
all the pages on your site, broken down by the web page title and the
developer-supplied screen name.
I cannot figure out how I can supply the screen name. Currently, for the screen name Pages and Screens has "Not Set", which is not useful at all.
Related
I was just wondering if it is allowed to have links or other interactive elements which performs an action within a live region?? The fact that the links are interactive and live regions are immediately made available to screen readers, is there a Success criteria or recommendation from WCAG that says not to do that?
There's nothing in WCAG that specifically addresses your situation but links and live regions are unrelated topics.
A live region is used when there is dynamic content on the page. For example, if you have a page with search results and there are filters to limit the results, as you select various filters, the number of results change (dynamic) and that change should be announced to assistive technology, typically through a live region.
Another example is a "settings" page. As you change settings, if the changes are automatically saved and a message displays saying the changes were saved, that message is dynamic (it was added to the page) and like the search result changes should be conveyed to assistive technology, again, typically through a live region.
In your situation, you have a link in a live region. Is the text for that link dynamic? Is there something that will cause the link text to change? If so, then it makes sense to have the link in a live region.
My product consists of a website, an iOS app, and an Android app. All of them are having the same set of screens.
I try to set up them so that I can see combined analytics data (e.g. average engagement time on each screen, screen view, interesting app event) in Google Analytics. I wonder what is the best practice to achieve that.
I set up a GA4 property with 3 data streams for Android app, iOS app, and website. I let Android app and iOS app manually send screen_view event with the same screen name. This way it is possible to see analytics data like avg. engagement time from Android/iOS combined.
But for website, gtag.js uses page_view and it logs 3 informations: page_title (default=document.title), page_location (default=location.href), and page_path (default=location.pathname).
In GA dashboard > Engagement > Screen and Page, they provided data filters of 4 possibilities:
Page title and screen class
Page path and screen class
Page title and screen name
Content group
It seems I have the following choices:
Let my website to manually send page_view with page_title=screen name that app is using. Then I can see combined engagement data using Page title and screen name option.
Let my app (iOS and Android) to send screen class as page path. Then use Page path and screen class.
The 1st choices is more feasible for me, but still require a lot of effort. Is there any other solution to achieve this?
Another option is to come up with own event - it requires a lot of effort. Such as event name page [name: <anything from app/website>].
Anyway from my experience I recommend to use built-in events page_view, screen_view for better manipulation across GA4, BigQuery, DataStudio. GA4 interface is built for such events.
For naming screens I recommend to create (at least) google sheet documentation with 3 columns (at least) - Web, Android, iOS. At the end you will end up with amazing GA4 capabilities. Think about Pareto principle 80/20, it is not required to log all of the interactions.
According to the docs, there should be a Dynamic Links domain for my project, which is displayed at the top of the Dynamic Links page. The docs have a screen capture like so:
Location of domain according to the Firebase documentation
However, on the Dynamic Links page for my project there is no such domain, at least not one I can see. Here is a screen shot (I've blacked out identifying info, there was no domain under the black square or circle!):
Screen shot of Dynamic Links page with no domain displayed
I've tried looking through settings and options in case there was some kind of toggle, but haven't found anything relevant.
Create a test link with whatever informations you want and you will have a complete link with your app domain like: app_code.app.goo.gl
I already have dynamic responsive website with html5,JavaScript and php as backend.The client wants to convert it to an app since he wants offline capabilities. I am totally new to this. Really confused as to how to go about it. We have managed to write sqlite queries for loading the master data. But still unsure as to how all things fall into place.Do we have to include jquery mobile as well.please guide.
There's a couple of things to keep in mind. I'll address the easiest one first - no, you do not need to use jQuery Mobile. jQuery Mobile gives you a nice UI, and a SPA-like framework for your app, but it isn't required per se. You can use something else like Ionic for example.
As for the conversion, at a high level, this is what needs to happen.
Imagine your current PHP site has 2 pages. The home page is a list of people. You click on a person and you go to a detail page. You have 2 php pages. The first simply does a SQL query to get people and the second does a SQL query to get one person based on the query param.
In your PhoneGap app, your code is all on the user's device, which means no PHP. Your home page needs to get people, so it has to call an API on your application server. You can use PHP to do the SQL as it does now, but instead of displaying it as a simple HTML list, it outputs it as JSON.
On the PhoneGap side, you can call this via JavaScript and then render the results.
The same goes for the detail view - you would need an API on your server side to return info about the person.
I hope this helps. I also have a full blog entry on this, with demo, here: http://www.raymondcamden.com/2012/05/05/converting-a-dynamic-web-site-to-a-phonegap-application
I'd like to track screenviews in my website, is this possible or are screenviews just meant to be used on apps? If so, how can I do it? Let me give you an overview of my situation.
I am restructuring a web site. Some of the pages that used to live under differents urls are now living under the same, with a hash id to denote the particular area of the page the user is in. So, for example, http://www.example.com/topics/topicA, http://www.example.com/problems/topicA and http://www.example.com/equations/topicA, are now in http://www.example.com/topics/topicA#content, http://www.example.com/topics/topicA#problems and http://www.example.com/topics/topicA#equations.
Now, I'd like to keep track of users visiting these areas. My initial idea was send a page view when the url is loaded and send a screenview each time the user clicks on the button to change the area of the page (i.e. #content, #problemas or #equations). For doing so, I used something like ga('send', 'screenview', {'screenName': 'content',});. As I couldn't see the screenviews in reports, I played a bit, setting the app name, the app id, the installer id etc before sending the screenview, for example:
ga('set', {
'appName': 'myAppName',
'appId': 'myAppId',
'appVersion': '1.0',
'appInstallerId': 'myInstallerId'
});
ga('send', 'screenview', {'screenName': 'content',});
So I can't see the screenviews in the real time reports (though I can see the page views). I can't see them in the regular reports either. I decided to create custom reports with dimensions Page and Screen name. There, I see sometimes screenviews are tracked (I think it happens when I set the appid etc before sending it, but not sure about this point).
Are screen views adecuate for tracking this behaviour or should I use just events, as I'm not on an app at all (just a responsive website)?
By the way, I am using Drupal 7 but that shouldn't make a difference.
Thanks in advance for your time and I hope I am making my question clear enhough.
Technically speaking its probably possible to send both pageviews and screenviews to the same Google Analytics web property.
The problem you will have is seeing the information. The way the Website is set up its either application or web account, Screenviews or pageviews. The reports are different, and you cant swap between them.
So you could send screenviews to a web site web property but you would never be able to analyse it on the website you would have to use the API to rip the data out. That and you would be analyzing apples and cars. Screenviews and pageviews are different they cant be analysed together.
Because of this web property's should be kept separate one for application (screenviews) one for web sites (pageviwes).
You should in my opinion do this using events.
+1 for an interesting question that made me think :)
Is possible, actually in BigQuery you can reach both data and see how this interact, both will have the same schema and will be stored in the same dataset(it is linked the raw data view). Even in the same sessions, you can send pageview and screen views having funny results.
But there is some important consideration when you implement this.
You need 2 different views, one Web View and One App View. Both views will let you access to different information and is not possible on the web interface of Google Analytics to access to both info at the same time. Not sure if with the API you can access to both info at the same time, I think that is totally possible
In the App View, you will able to see only information of screenview, events and ecommerce.Is also mandatory the App Name parameter on this hits.
In the Web View, you will able to see only the pageview reports,events and events.
The ecommerce info and events will be reachable from both views, there is no way to know if this comes from a web or an app ( technically). So is tricky to read this kind of reports in that case.
Sessions can experiment stranges behaviors. As example gosht sessions coming from the screen view with no page view, sending events.
Taking this into consideration, as Dalmto says, the best to you is use events or sent virtualpage view.
Mixing pageview and screen view is not recommended by Google but is totally possible.This kind of implementations is only useful when you have an embed web-app and a webpage on the same server and you want to have it all on the same dataset, if this case apply, is highly recommended to add a custom dimension to filter the app info on the web view and the web info on the app view and keep both worlds separated.
As the last point, your code is working, I can see the screen info on the desktop property. But not be able to see it in the web view.