`
入云涛
  • 浏览: 155959 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

世博会介绍手机软件---红舞姬

阅读更多

经过两天,总算是有了一个稳定的版本,今晚就前往上海,去世博会玩。并给其起一个名字红舞姬(来源于前两天看的深海探奇,我们两个都喜欢那个西班牙红舞姬)。
现把程序先发上来。
列表

内容

下面这个类是列表呈现页面。
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ruyuntao;

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*; //提供了一个命令类
import javax.microedition.rms.RecordStoreException;
/**
 * @author Administrator
 */
public class expo extends MIDlet implements CommandListener {

    private List mainList;
    Image[] imageArray;
    private Command exitCommand;
    private Display display;
    expoFile m;

    String stringArray[] = {
        "**主题馆",
        "主题馆",
        "城市人馆",
        "城市生命馆",
        "城市地球馆",
        "城市足迹馆",
        "城市未来馆",
        "**A区",
        "中国国家馆",
        "土库曼斯坦馆",
        "日本馆",
        "**中国省区市联合馆",
        "北京馆",
        "天津馆",
        "河北馆",
        "山西馆",
        "内蒙古馆",
        "辽宁馆",
        "吉林馆",
        "黑龙江馆 ",
        "江苏馆",
        "浙江馆 ",
        "安徽馆",
        "福建馆",
        "江西馆 ",
        "山东馆 ",
        "河南馆 ",
        "湖北馆",
        "湖南馆",
        "广东馆",
        "广西馆",
        "海南馆 ",
        "重庆馆",
        "四川馆",
        "贵州馆",
        "云南馆 ",
        "西藏馆",
        "陕西馆 ",
        "甘肃馆",
        "青海馆",
        "宁夏馆",
        "新疆馆 ",
        "上海馆",
        "**A区2",
        "乌兹别克斯坦馆 ",
        "巴基斯坦馆 ",
        "以色列馆",
        "卡塔尔馆 ",
        "印度馆 ",
        "尼泊尔馆 ",
        "台湾馆 ",
        "**亚洲联合馆一",
        "马尔代夫馆 ",
        "东帝汶馆 ",
        "吉尔吉斯斯坦馆",
        "孟加拉国馆 ",
        "塔吉克斯坦馆",
        "蒙古馆",
        "**亚洲联合馆二",
        "也门馆 ",
        "巴林馆 ",
        "巴勒斯坦馆 ",
        "约旦馆",
        "阿富汗馆",
        "叙利亚馆 ",
        "**亚洲联合馆三",
        "老挝馆",
        "伊拉克馆 ",
        "缅甸馆 ",
        "**A区3",
        "伊朗馆 ",
        "沙特阿拉伯馆",
        "阿曼馆",
        "阿联酋馆",
        "哈萨克斯坦馆",
        "香港馆 ",
        "越南馆",
        "斯里兰卡馆",
        "韩国馆",
        "朝鲜馆 ",
        "黎巴嫩馆",
        "摩洛哥馆",
        "澳门馆 ",
        "**B片区",
        "马来西亚馆 ",
        "太平洋联合馆",
        "文莱馆 ",
        "公众参与馆",
        "世界气象馆",
        "世界贸易中心协会馆",
        "生命阳光馆 ",
        "印度尼西亚馆 ",
        "红十字会红新月会会馆",
        "**国际组织联合馆 ",
        "上海合作组织馆 ",
        "公共交通国际联会馆",
        "世界水理事会馆 ",
        "世界自然基金会馆",
        "世界城市和地方政府联合组织馆 ",
        "东南亚国家联盟馆 ",
        "东南非共同市场馆",
        "全球环境基金馆 ",
        "阿拉伯国家联盟馆 ",
        "国际竹藤组织馆 ",
        "国际博物馆协会馆 ",
        "法语国家商务论坛馆",
        "博鳌亚洲论坛馆",
        "**B片区2",
        "国际信息发展网馆",
        "柬埔寨馆",
        "泰国馆",
        "菲律宾馆 ",
        "联合国联合馆",
        "新加坡馆",
        "新西兰馆",
        "澳大利亚馆",
        "**C片区",
        "土耳其馆",
        "比利时-欧盟馆",
        "**中南美洲联合馆",
        "厄瓜多尔馆",
        "乌拉圭馆",
        "巴拉圭馆",
        "巴拿马馆",
        "尼加拉瓜馆",
        "危地马拉馆",
        "多米尼加馆 ",
        "玻利维亚馆",
        "洪都拉斯馆",
        "哥斯达黎加馆",
        "萨尔瓦多馆",
        "**C片区2",
        "丹麦馆 ",
        "乌克兰馆",
        "巴西馆",
        "古巴馆",
        "卢森堡馆",
        "白俄罗斯馆",
        "立陶宛馆",
        "尼日利亚馆 ",
        "加拿大馆",
        "**加勒比共同体联合馆  ",
        "牙买加馆 ",
        "巴巴多斯馆 ",
        "巴哈马馆 ",
        "加勒比开发银行馆 ",
        "加勒比共同体馆",
        "圣文森特和格林纳丁斯馆 ",
        "圣卢西亚馆",
        "圣基茨和尼维斯馆",
        "圭亚那馆 ",
        "多米尼克馆 ",
        "安提瓜和巴布达馆",
        "苏里南馆 ",
        "伯利兹馆",
        "格林纳达馆",
        "特立尼达和多巴哥馆 ",
        "海地馆",
        "**C片区3",
        "西班牙馆",
        "匈牙利馆",
        "冰岛馆",
        "安哥拉馆 ",
        "芬兰馆 ",
        "克罗地亚馆 ",
        "利比亚馆 ",
        "希腊馆 ",
        "阿尔及利亚馆 ",
        "阿根廷馆",
        "拉脱维亚馆",
        "英国馆",
        "**欧洲联合馆一 ",
        "马耳他馆 ",
        "圣马力诺馆 ",
        "列支敦士登馆",
        "塞浦路斯馆 ",
        "**欧洲联合馆二",
        "亚美尼亚馆 ",
        "阿尔巴尼亚馆 ",
        "阿塞拜疆馆 ",
        "保加利亚馆 ",
        "前南斯拉夫马其顿共和国馆",
        "格鲁吉亚馆 ",
        "黑山馆",
        "摩尔多瓦馆",
        "**非洲联合馆",
        "几内亚馆 ",
        "几内亚比绍馆",
        "马达加斯加馆",
        "马里馆",
        "马拉维馆",
        "厄立特里亚馆 ",
        "中非馆",
        "贝宁馆 ",
        "冈比亚馆",
        "毛里求斯馆",
        "毛里塔尼亚馆 ",
        "乌干达馆",
        "布隆迪馆",
        "卢旺达馆 ",
        "乍得馆 ",
        "尼日尔馆",
        "加纳馆",
        "加蓬馆",
        "吉布提馆",
        "刚果(布)馆 ",
        "刚果(金)馆",
        "多哥馆",
        "赤道几内亚馆 ",
        "苏丹馆 ",
        "利比里亚馆",
        "佛得角馆",
        "纳米比亚馆 ",
        "坦桑尼亚馆",
        "非盟馆",
        "肯尼亚馆",
        "科特迪瓦馆",
        "科摩罗馆 ",
        "津巴布韦馆",
        "埃塞俄比亚馆",
        "莱索托馆 ",
        "莫桑比克馆 ",
        "索马里馆",
        "博茨瓦纳馆 ",
        "喀麦隆馆 ",
        "塞内加尔馆",
        "塞舌尔馆 ",
        "塞拉利昂馆 ",
        "赞比亚馆",
        "**欧洲联合馆三",
        "罗马尼亚馆",
        "委内瑞拉馆 ",
        "法国馆 ",
        "波兰馆 ",
        "波黑馆 ",
        "挪威馆 ",
        "南非馆",
        "俄罗斯馆 ",
        "美国馆 ",
        "突尼斯馆 ",
        "埃及馆 ",
        "荷兰馆 ",
        "哥伦比亚馆",
        "秘鲁馆 ",
        "爱尔兰馆 ",
        "爱沙尼亚馆 ",
        "捷克馆 ",
        "斯洛文尼亚馆 ",
        "斯洛伐克馆 ",
        "葡萄牙馆 ",
        "智利馆 ",
        "奥地利馆 ",
        "瑞士馆",
        "瑞典馆 ",
        "意大利馆 ",
        "塞尔维亚馆 ",
        "墨西哥馆 ",
        "德国馆 ",
        "摩纳哥馆",
        "**D片区   ",
        "上海企业联合馆 ",
        "太空家园馆 ",
        "日本产业馆 ",
        "中国人保馆 ",
        "中国铁路馆 ",
        "可口可乐馆 ",
        "石油馆 ",
        "国家电网馆 ",
        "思科馆 ",
        "韩国企业联合馆 ",
        "震旦馆",
        "**E片区 ",
        "万科馆",
        "上汽集团-通用汽车馆 ",
        "中国航空馆 ",
        "中国船舶馆 ",
        "民营企业联合馆 ",
        "远大馆 ",
        "信息通信馆",
        "**城市最佳实践区建设案例(北部) ",
        "宁波案例馆 ",
        "西安案例馆 ",
        "麦加案例馆 ",
        "温哥华案例馆 ",
        "上海案例馆 ",
        "马德里案例馆 ",
        "伦敦案例馆 ",
        "汉堡案例馆 ",
        "阿尔萨斯案例馆",
        "罗纳阿尔卑斯案例馆 ",
        "澳门案例馆 ",
        "成都案例馆 ",
        "欧登塞案例馆 ",
        "罗纳阿尔卑斯灯光案例",
        "城市最佳实践区展馆案例(中部)",
        "城市最佳实践区其他展示案例(南部)",
        "服务支持"
    };
    String pathNameArr[] = {
        "..",
        "zt",
        "csrg",
        "cssmg",
        "csdqg",
        "cszjg",
        "cswlg",
        "..",
        "zggjg",
        "tkmstg",
        "rbg",
        "..",
        "bjg",
        "tjg",
        "hbg",
        "sxg",
        "nmg",
        "lng",
        "jlg",
        "hljg",
        "jsg",
        "zjg",
        "ahg",
        "fjg",
        "jxg",
        "xdg",
        "hng",
        "hubg",
        "hung",
        "gdg",
        "gxg",
        "haing",
        "cqg",
        "scg",
        "gzg",
        "yng",
        "xzg",
        "sxig",
        "gsg",
        "qhg",
        "nxg",
        "xjg",
        "shg",
        "..",
        "wzbkst",
        "bjst",
        "ysl",
        "kte",
        "yd",
        "nbe",
        "tw",
        "..",
        "medf",
        "ddw",
        "jejsst",
        "mjlg",
        "tjkst",
        "mgw",
        "..",
        "ym",
        "bl",
        "blst",
        "yud",
        "afh",
        "xly",
        "..",
        "lwg",
        "ylkg",
        "mdg",
        "..",
        "ylg",
        "stalb",
        "am",
        "alq",
        "hskst",
        "xg",
        "yueng",
        "slnk",
        "hg",
        "cx",
        "lbn",
        "mlg",
        "aom",
        "..",
        "mlxy",
        "tpylhg",
        "wlg",
        "gzcyg",
        "sjqxg",
        "sjmyzx",
        "smyg",
        "ydnxx",
        "hszhxyg",
        "..",
        "shhzzz",
        "ggjtgjlh",
        "sjslsh",
        "sjzrjjh",
        "sjcsdfzf",
        "dnygjlm",
        "..",
        "qqhjjj",
        "albgjlm",
        "gjztzz",
        "gjbwgxh",
        "fygjswlt",
        "bayzlt",
        "..",
        "gjxxfz",
        "jpzg",
        "tgg",
        "flbg",
        "lhglhg",
        "xjpg",
        "xxlg",
        "aodlyg",
        "..",
        "teq",
        "bls",
        "..",
        "egde",
        "wlgg",
        "bng",
        "bnmg",
        "njlg",
        "wdmlg",
        "mjnj",
        "blwy",
        "hdls",
        "gsdlj",
        "sewd",
        "..",
        "dmg",
        "wkl",
        "bx",
        "gb",
        "lsb",
        "bels",
        "ltw",
        "nrly",
        "jld",
        "..",
        "ymj",
        "bbds",
        "bhm",
        "jlbkfyh",
        "jlbgtt",
        "swstglnds",
        "slx",
        "sjsnws",
        "gyn",
        "dmnk",
        "atgbbd",
        "sln",
        "blc",
        "glnd",
        "tlnddbg",
        "hd",
        "..",
        "xby",
        "xyl",
        "bd",
        "agl",
        "flg",
        "kldy",
        "lby",
        "xlg",
        "aejly",
        "agt",
        "ltwy",
        "yg",
        "..",
        "metg",
        "smlr",
        "lzdsd",
        "spls",
        "..",
        "ymny",
        "aebny",
        "asbj",
        "bjly",
        "lslfm",
        "gljy",
        "hs",
        "medw",
        "..",
        "jny",
        "jnybs",
        "mdjsj",
        "ml",
        "mlw",
        "eltly",
        "zf",
        "bn",
        "gby",
        "mlqs",
        "mltny",
        "wgd",
        "bld",
        "lwd",
        "zdg",
        "nre",
        "jn",
        "jp",
        "jbt",
        "ggb",
        "ggj",
        "dg",
        "cdjny",
        "sd",
        "lbly",
        "fdj",
        "nmby",
        "tsny",
        "fm",
        "kny",
        "ktdw",
        "kmlg",
        "jbbw",
        "eseby",
        "lst",
        "msbk",
        "sml",
        "bcwl",
        "kml",
        "snje",
        "sse",
        "slly",
        "zby",
        "..",
        "lmny",
        "wnrl",
        "fg",
        "blg",
        "bh",
        "lw",
        "nf",
        "els",
        "mg",
        "tns",
        "ej",
        "hn",
        "elby",
        "mlgg",
        "eel",
        "esny",
        "jk",
        "slwny",
        "slfk",
        "pty",
        "zl",
        "adl",
        "ss",
        "sdg",
        "ydl",
        "sewy",
        "mxg",
        "dgg",
        "eng",
        "..",
        "shqylh",
        "tkjy",
        "rbcyg",
        "zgrbg",
        "zgtl",
        "kkkl",
        "sy",
        "gjdw",
        "sk",
        "hgqylh",
        "zd",
        "..",
        "wkg",
        "sqty",
        "zghk",
        "zgcb",
        "myqy",
        "ydg",
        "xxtx",
        "..",
        "nbalg",
        "xaalg",
        "mjalg",
        "wghalg",
        "shalg",
        "mdlalg",
        "ldalg",
        "hbalg",
        "aessalg",
        "lnaebsalg",
        "amalg",
        "cdalg",
        "odsnalg",
        "lnaebsdgal",
        "cszjsjz",
        "cszjsjn",
        "server"
    };

    public expo() //类的构造函数
    {
        int length = stringArray.length;
        String titleArray[] = new String[length];
        try {
            Image icon = Image.createImage("/h.png");

            imageArray = new Image[length];
            for (int i = 0; i < length; i++) {
                imageArray[i] = icon;
                String tem = stringArray[i];
                if (tem.length() > 6) {
                    tem = tem.substring(0, 6);
                }
                titleArray[i] = tem;
            }
        } catch (java.io.IOException err) {
            imageArray = null;
        }
        Font font = Font.getFont(Font.FACE_SYSTEM,
                Font.STYLE_PLAIN, Font.SIZE_LARGE);
        mainList = new List("世博会简介", Choice.IMPLICIT, titleArray, imageArray);
        int size = mainList.size();
        for (int i = 0; i < size; i++) {
            mainList.setFont(i, font);
        }
        exitCommand = new Command("退出", Command.EXIT, 1);
        mainList.addCommand(exitCommand);
        mainList.setCommandListener(this);
        display = Display.getDisplay(this);
    }

    protected void startApp() throws MIDletStateChangeException //负责程序的初始化功能
    {
        display.setCurrent(mainList);

    }

    protected void destroyApp(boolean arg0) throws MIDletStateChangeException //程序推出时调用的函数
    {
    }

    protected void pauseApp() //暂停状态时调用的函数
    {
    }

    public void commandAction(Command c, Displayable d) {
        if (c == exitCommand) {
            try {
                destroyApp(false);
            } catch (MIDletStateChangeException ex) {
                ex.printStackTrace();
            }
            notifyDestroyed();
        } else {
            String name = pathNameArr[mainList.getSelectedIndex()];
            if (!"..".equals(name)) {
                try {
                    m = new expoFile(display, mainList, name, stringArray[mainList.getSelectedIndex()]);
                    Display.getDisplay(this).setCurrent(m);
                } catch (RecordStoreException ex) {
                    ex.printStackTrace();
                }
            }
        }
    }
}


下面这个类是内容显示页面
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ruyuntao;

import java.io.IOException;
import java.io.InputStreamReader;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.StringItem;
import javax.microedition.rms.RecordStoreException;
import javax.microedition.rms.RecordStoreFullException;
import javax.microedition.rms.RecordStoreNotFoundException;

/**
 *
 * @author Administrator
 */
public class expoFile extends Form implements CommandListener {

    private Display display;
    private Displayable displayable;
    private Command cmdBack;
    private Font font;
    public expoFile(Display d, Displayable p, String name,String mpName) throws RecordStoreException,
            RecordStoreFullException, RecordStoreNotFoundException {
        super("世博会");
        display = d;
        displayable = p;
        font = Font.getFont(Font.FACE_SYSTEM,
                Font.STYLE_BOLD, Font.SIZE_LARGE);
        String path = "/text/" + name;
        if(!mpName.equals("服务支持")){
            StringItem item = new StringItem("","场馆:"+mpName);
            item.setFont(font);
            this.append(item);
        }
        font = Font.getFont(Font.FACE_SYSTEM,
                Font.STYLE_PLAIN, Font.SIZE_LARGE);
        try {
            readFile(path);
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        cmdBack = new Command("返回", Command.BACK, 1);
        this.addCommand(cmdBack);
        this.setCommandListener(this);
    }

    private void readFile(String filename) throws IOException {
        InputStreamReader reader = new InputStreamReader(
                getClass().getResourceAsStream(filename));
        String line = null;
        while ((line = readLine(reader)) != null) {
            StringItem item = new StringItem("",line);
            item.setFont(font);
            this.append(item);
        }
        reader.close();
    }

    private String readLine(InputStreamReader reader) throws IOException {
        int readChar = reader.read();
        if (readChar == -1) {
            return null;
        }
        StringBuffer string = new StringBuffer("");
        while (readChar != -1 && readChar != '\n') {
            if (readChar != '\r') {
                string.append((char) readChar);
            }
            readChar = reader.read();
        }
        return new String(string.toString().getBytes(), "UTF-8");
    }

    public void commandAction(Command c, Displayable d) {
        try {
            if (c == cmdBack) {
                display.setCurrent(displayable);
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}


用了两天写出来的,大部分时间用在了从世博会网站上拷贝文件,里面的代码很多事借鉴网友的无私奉献。现在将我的成果也发布出来。
不过我目前只在诺基亚s40和s60两种类型手机上测试过,希望大家指出哪里不足,也希望能够给需要到世博会去的同仁们带来帮助。
附件里面expo.jar包里面是编译好的,直接拷贝到存储卡里面就可以运行。
  • 大小: 21 KB
  • 大小: 24.2 KB
分享到:
评论

相关推荐

    世界博览会PPT模板下载

    世界博览会,又称世博会,是全球规模宏大、影响力深远的国际性展览活动,旨在展示各国科技、文化、经济和社会发展成就。为了在这样的舞台上呈现最佳形象,一份精心设计的PPT模板至关重要。本篇文章将深入探讨如何...

    上海世博会园区导游图-片区分布

    世博园区导游图之片区分布图,便于自行游玩的游客进行使用,便于导向。

    主办国法制时代世界博览会的发展.docx

    【主办国法制时代世界博览会的发展】指的是从19世纪中叶至20世纪30年代,全球范围内世博会举办的主要模式。在这个阶段,世界博览会经历了从英国起源的“工业博览会”向全球范围扩展的转变,成为了各国展示科技、文化...

    (完整版)UG-NX-8.0-软件入门介绍.ppt

    UG-NX-8.0-软件入门介绍 UG NX软件是美国EDS公司(现已经被西门子公司收购)开发的一套集CAD/CAM/CAE/PDM/PLM于一体的软件集成系统。UG NX软件在航空航天、汽车、通用机械、工业设备、医疗器械以及其它高科技应用...

    论文研究-2010′上海世界博览会园区客流集散枢纽选址研究.pdf

    论文研究-2010′上海世界博览会园区客流集散枢纽选址研究.pdf, 介绍了上海世博会概况,进行了上海世博会园区交通区位及客流特点分析,给出了上海世博会园区客流集散枢纽的...

    世界博览会专题讲座.ppt

    【中国与世界博览会】中国的参与历史源远流长,2010年上海世博会是中国首次举办的世界博览会,以“城市,让生活更美好”为主题,吸引了来自世界各地的参展者。上海世博会创造了多项纪录,包括参展国家和组织的数量、...

    2010数学建模世博会资料

    1. **世博会背景**:2010年中国上海世界博览会是中国首次举办的一次以“城市”为主题的综合性世博会,旨在探讨城市发展面临的新挑战,并分享可持续发展的理念和技术。 2. **数学建模在世博会的应用**:数学建模作为...

    世博会英语常用短句50句

    - **知识点解析**:这是2010年中国上海世界博览会的全称。 - **实用场景**:适用于各种场合介绍此次世博会的基本信息。 #### 3. Is that the Expo emblem? - **知识点解析**:此句用于确认所看到的是否为世博会的...

    公共建筑-05-方案文本.2010世博会中国馆投标方案.rar

    【标题】"公共建筑-05-方案文本.2010世博会中国馆投标方案.rar"揭示了这个压缩包内容的核心,它包含了2010年上海世博会中国馆的投标设计方案。这个主题涵盖了建筑设计、城市规划以及项目管理等多个方面的IT知识。 ...

    毕业设计javajsp世界园艺博览会信息服务系统ssh-qkrp源码含文档工具包

    毕业设计javajsp世界园艺博览会信息服务系统ssh-qkrp源码含文档工具包 后台是ssh框架,页面是jsp,数据库mysql,jdk1.8,开发工具用ecplise、myecplise、sts、idea都可以 前台:首页,文字信息,图片信息,搜索信息,...

    世博会管理系统 软件工程实习报告.doc

    【世博会管理系统软件工程实习报告】 本实习报告主要围绕世博会管理系统这一软件工程项目的实施进行阐述,涵盖了系统的需求分析、设计、开发、测试以及维护等多个关键环节。在实习过程中,我深入理解了软件工程的...

    XXXX上海世博会“上海-欧美”礼仪人员选拔活动.pptx

    XXXX上海世博会“上海-欧美”礼仪人员选拔活动.pptx

    中级程序员刷题软件-VoiceSign:语音签名

    中级程序员刷题软件语音签名 这是一个 React Native 应用程序,希望在旅途中轻松学习手语。 主要的利基和吸引力是语音到文本功能。 一种将语音转换为文本再到手语的教育应用程序和通信工具。 您可以查看的宣传视频和...

    公共建筑-04-方案文本.2010上海世博会沙特馆建筑设计方案.rar

    标题中的“公共建筑-04-方案文本.2010上海世博会沙特馆建筑设计方案.rar”揭示了这个压缩包文件的主题,它包含了2010年上海世博会沙特馆的建筑设计方案。这个主题涵盖了公共建筑设计、世博会场馆设计以及沙特阿拉伯...

    Expo-2:在世博会上看到它------&gt;

    您可以通过单击“运行”按钮直接在手机或平板电脑上预览更改,或者单击“点击播放”使用模拟器。 完成后,点击保存并分享链接! 当您准备好查看 Expo 提供的所有内容时(或者如果您想使用自己的编辑器),您可以...

    Buzzer-App-Part-2:在世博会上做到了------&gt;

    您可以通过单击“运行”按钮直接在手机或平板电脑上预览更改,或者单击“点击播放”使用模拟器。 完成后,点击保存并分享链接! 当您准备好查看 Expo 提供的所有内容时(或者如果您想使用自己的编辑器),您可以...

Global site tag (gtag.js) - Google Analytics