2

在我的iPhone应用程序中,我正在使用Omniture进行跟踪。如何跟踪iPhone应用程序中的全部内容

我在AppDelegate中编写代码:

OMAppMeasurement * s = [OMAppMeasurement getInstance]; 

/* Specify the Report Suite ID(s) to track here */ 
s.account = @"reportSuiteID"; 

s.currencyCode = @"USD"; 
/* Turn on and configure debugging here */ 

s.debugTracking = YES; 

/* WARNING: Changing any of the below variables will cause drastic 
changes 
to how your visitor data is collected. Changes should only be made 
when instructed to do so by your account manager.*/ 

[email protected]"firstViewController"; 

s.trackingServer = @"trackingserver"; 
[s track]; 

我的控制台显示只有一行:

应用测试库的编译时间= 2011年1月25日11时46分14秒

建议我我做错了什么?

我的代码是否在正确的位置?

而我在哪里可以看到报告?

回答

1

与我们的所有客户端,我们一直使用实施不同的sintax。 把 OMAppMeasurement * s; AppDelegate中的 以及applicationDidFinishLaunching函数中的所有配置代码。 这是所有Omniture实施文档中的认证实施。

#import "BasicExampleAppDelegate.h" 
@implementation BasicExampleAppDelegate 

OMAppMeasurement * s; 

@synthesize window = window_; 

- (void)applicationDidFinishLaunching:(UIApplication *)application { 

    //Instantiate instance 
    s = [[OMAppMeasurement alloc] init]; 
    //Setup application config variables 
    s.account = @"RSID"; 

    s.trackingServer = @"TRACKSERVER"; 

    s.pageName = @"Main Page"; 

    [s track]; 

    [window_ makeKeyAndVisible]; 
} 

- (void)dealloc { 
    [s release]; 
    [window_ release]; 
    [super dealloc]; 
} 

@end 
+0

@Claudio Sermenghi:非常感谢,我想了解更多信息,如果我想跟踪其他页面,该怎么办?这段代码是否只追踪“主页”? – Meghan 2011-03-03 11:32:42

+0

这是实例化跟踪对象并将第一个pageView发送到Omniture服务器的配置代码。为了跟踪所有其他操作,您必须在每个要跟踪的动作(例如按钮推送,页面重新加载,应用程序导航)中将呼叫转到s.pageName = @“New Page Name”和[s track] – 2011-03-04 08:45:36

+0

@Claudio Sermenghi:谢谢。我知道了。我还有一个疑问就是,正如你所说的那样,打电话给s。pagename = @“New Page Name”和[s track],是否应该在每个我想跟踪的页面上创建对象(OMAppMeasurement * s = [[OMAppMeasurement alloc] init];) – Meghan 2011-03-05 03:59:34

0

检查项目中是否包含所有必需的文件和框架(“OMAppMeasurement.h”和框架libOmnitureAppMeasurement-iPhoneDevice.a和libOmnitureAppMeasurement-iPhoneSimulator_4_0_GM.a)。

尝试使用您自己的跟踪数据创建NSDictionary并使用(void)track:(NSDictionary *)variableOverrides。如果跟踪成功,则没有正面信号(作为日志声明)。

报告可以在Omniture网站上查看。

编辑: 初始化代码必须是在UIAppDelegate。 [跟踪]调用必须是您想要跟踪某些数据的位置(例如,在某些UIViewController的init方法中或按某个按钮之后)。

指南可以发现here

+0

感谢您的输入负载。你可以给我一个简短的教程或参考一些文章,我可以更好地理解Omniture吗?代码也放在正确的地方吗?它目前在我的AppDelegate下。 – Meghan 2011-02-25 12:38:45

+0

再次感谢。所以在有问题的代码中,我必须删除[s track]和s.pagename?在其他页面中,我应该使用AppDelegate本身的对象还是为不同的页面创建不同的对象? – Meghan 2011-02-26 07:26:31

+0

如果我想跟踪来自不同视图的数据(如s.pageName,s.currencyCode等),我的代码应该在AppDelegate和其他视图中? (比如firstViewController,secondViewController)。 – Meghan 2011-02-26 07:31:55