Actionscript 3 带flash播放器的饼干
我想知道如何创建一个flash cookie来跟踪访问者Actionscript 3 带flash播放器的饼干,actionscript-3,cookies,flash,Actionscript 3,Cookies,Flash,我想知道如何创建一个flash cookie来跟踪访问者 有关更多信息,我已经使用html和appnexus制作了相同的东西来获取访问者的ID。有一个SharedObject,可以描述为Flash Cookie 下面是一个如何记住用户上次登录时间的小示例: var sharedObject:SharedObject = SharedObject.getLocal("testObj"); if (sharedObject.data.id == null) { sharedObject.d
有关更多信息,我已经使用html和appnexus制作了相同的东西来获取访问者的ID。有一个SharedObject,可以描述为Flash Cookie 下面是一个如何记住用户上次登录时间的小示例:
var sharedObject:SharedObject = SharedObject.getLocal("testObj");
if (sharedObject.data.id == null)
{
sharedObject.data.id = 20;
sharedObject.flush();
}
trace(sharedObject.data.id); // 20
id对象将被保存,以后可以访问/修改
有关SharedObject的更多信息,请访问以下链接:正如“创造性魔法”所述,您可以使用SharedObject在Flash中持久化数据,就像使用Cookie在Javascript中持久化数据一样
鉴于您引用了“html”和“访问者ID”,我假设您希望在浏览器窗口的上下文中实现这一点
如果我是正确的,您应该知道您不能直接使用Javascript使用SharedObjects。您还应该知道,您可以通过Actionscript代码间接实现这一点(他/她的答案中包含了一个“创造性魔术”的示例)
首先,您需要将ActionScript代码封装在一个方法中,然后将该方法注册为其父应用程序外部接口的一部分:
function handleObjects(/*param1, param2, ... */):void {/*code*/}
ExternalInterface.addCallback("handleObjects");
其次,您将需要编译Actionscript应用程序(代码),并在HTML中创建一个元素来引用生成的.swf文件
然后,假设前面提到的HTML元素表示为名为FlashDomeElement
的DomeElement,您可以使用DomeElement调用您的方法:
flashDOMElement.handleSharedObjects(/*arg1, arg2, ... */);
如果你不想经历这一切的麻烦,那就去看看吧;它是一个Javascript库,建立了一个统一的接口,可用于在所有本机和一些非本机存储设施(包括Flash本地共享对象)中执行公共存储操作 有了它,创建LSO可以通过以下简单代码完成:
bakedGoods.set({
data: [{key: "key", value: "value"}],
storageTypes: ["flash"],
complete: function(byStorageTypeRemovedItemKeysObj, byStorageTypeErrorObj){/*code*/}
});
检索和删除数据同样简单。相信我,我知道;我是它的维护者:)