Aqui está o que eu finalmente fiz (não gostei da idéia de incorporar o código .Net dentro do javascript):
- Configurei duas contas do Google Analytics, uma para desenvolvimento / teste e outra para produção
- Crie uma página que retorne o ID da conta do Google Analytics (do web.config) como seu corpo.
- Em $ (document) .ready, faça uma chamada ajax para a página
- No Ajax concluído, chame o script do Google Analytics com a resposta (que contém o ID da conta)
Portanto, dependendo do ambiente em que implanto, uso uma das versões do arquivo web.config que contém o ID da conta correta.
É um pouco mais complicado, mas não envolve a geração de javascript a partir do .NET, e tem sido muito simples com o jQuery.
Aqui está o código final:
var setupGoogleAnalytics = function (clientNumber) {
var gaq = gaq || [];
gaq.push(['_setAccount', clientNumber]);
gaq.push(['_setDomainName', 'none']);
gaq.push(['_trackPageview']);
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
}
$(document).ready(function(){
$.ajax({
url: "GetGAClientNumber.aspx",
success: function(data) {
setupGoogleAnalytics(data);
}
});
});
E funciona perfeitamente!