コード例 #1
0
    public async void register(string unparsedOptions)
    {
        var options = JsonHelper.Deserialize <string[]>(unparsedOptions)[0];
        var config  = JsonHelper.Deserialize <PushConfig>(options);

        Registration registration = new MpnsRegistration();

        registration.PushReceivedEvent += HandleNotification;
        var pushConfig = Convert(config);
        await registration.Register(pushConfig);

        DispatchCommandResult(new PluginResult(PluginResult.Status.OK), ChannelId);

        PluginResult result = new PluginResult(PluginResult.Status.NO_RESULT);

        result.KeepCallback = true;
        DispatchCommandResult(result);

        if (P.message != null)
        {
            if (config.SendMetricInfo)
            {
                await registration.SendMetricWhenAppLaunched(pushConfig, P.data[Registration.PUSH_ID_KEY]);
            }
            HandleNotification(new Event()
            {
                Alert = P.message, Payload = P.data
            });
        }
    }
コード例 #2
0
    public async void register(string unparsedOptions)
    {
        var options = JsonHelper.Deserialize <string[]>(unparsedOptions)[0];
        var config  = JsonHelper.Deserialize <PushConfig>(options);

        Registration registration = new MpnsRegistration();

        registration.PushReceivedEvent += HandleNotification;
        await registration.Register(Convert(config));

        InvokeCustomScript(new ScriptCallback("eval", new string[] { "cordova.require('org.jboss.aerogear.cordova.push.AeroGear.UnifiedPush').successCallback()" }), false);

        PluginResult result = new PluginResult(PluginResult.Status.NO_RESULT);

        result.KeepCallback = true;
        DispatchCommandResult(result);

        if (P.message != null)
        {
            HandleNotification(new Event()
            {
                Alert = P.message, Payload = P.data
            });
        }
    }