1

如何从适用于 Android 和 iOS 的钛应用程序打开本机日历?例如,单击一个按钮,我想在 ipad 上打开本机日历。

4

2 回答 2

1

在 android 中,您可以使用本机意图打开它,如此处所述

低于和高于 Gingerbread 的版本之间存在差异。如本问题末尾所述,由于 HTC Sense 软件,HTC 设备也存在差异。

这是我测试过的 Titanium 代码:

    if (Titanium.Platform.osname=="android"){

        //Params needed to create the android intent.
        var packageStr = "com.google.android.calendar";
        var classStr = "com.android.calendar.LaunchActivity";
        var actionStr = Ti.Android.ACTION_VIEW;

        var model = Ti.Platform.model;


        if ((model.indexOf("HTC") != -1) || (model.indexOf("htc") != -1)){
            //If it's a HTC device
            packageStr = "com.htc.calendar";
            classStr = "com.htc.calendar.MonthActivity";
            actionStr = Ti.Android.ACTION_MAIN;
        }
        else {
            //For android versions before Gingerbread (2.3)
            var version = parseFloat(Ti.Platform.version);
            if (version < 2.4) packageStr = "com.android.calendar";
        }

        //Launch native calendar
        var intent = Ti.Android.createIntent({
            action: actionStr,
            packageName: packageStr,
            className: classStr
        });
        Ti.Android.currentActivity.startActivity(intent);
    }

您还可以通过与上面的代码相同的方式为 Titanium调整它来打开本机日历的“创建事件”屏幕

于 2014-04-14T18:22:14.210 回答
1

只需使用:

Titanium.Platform.openURL('CALSHOW://');
于 2013-11-26T09:00:35.177 回答