📄 commandresources.java
字号:
// Copyright (c) 2005 Sony Ericsson Mobile Communications AB
//
// This software is provided "AS IS," without a warranty of any kind.
// ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
// INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
// PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
//
// THIS SOFTWARE IS COMPLEMENTARY OF JAYWAY AB (www.jayway.se)
/*///////////////////////////////////////////////////////////////////////////////
//文档生成日期:2005.11.3
//
//(1)概述:
//类名称:CommandResources
//类说明:
// 提供各种资源的统一入口,比如图片、字符串。
//所在子系统:MIMESMSnotifyPushRegistry
//
//系统总描述:
本工程发送一个MIME头的短信给目标手机。MIME头中指明了对方应该如何处理。
对方手机收到后,触发注册了PushRegistry的MIDlet应用,并解析短信,
按照指明的命令操作。
子系统描述:
注册Push Registry,监听sms://:8341,当然端口可以修改的。
这样,收到带有MIME头的短信后,解析并按照命令行事.
//(2)历史记录:
//创建人: 郑昀(2005.11.3)
//联系我: Google Talk >> zhengyun@gmail.com
//Blogs: http://blog.csdn.net/zhengyun_ustc/以及http://www.cnblogs.com/zhengyun_ustc
//(3)版权声明:
//我这个版本的MIMESMSnotifyPushRegistry,
//j2me客户端代码仅仅允许您借鉴,但不得用于商业用途,除非得到郑昀本人的授权。本人保留所有权利。
////////////////////////////////////////////////////////////////////*/
package com.ultrapower.common;
import java.io.InputStream;
import java.util.Hashtable;
import javax.microedition.lcdui.Image;
/**
* Primitive resource mapper.
*
* @author Peter Andersson & zhengyun
*/
public class CommandResources
{
// Text keys
private static int TXTID = 0;
// text / page titles
public static final int TXT_T_APP = TXTID++;
// RMS Name.,这一个是为了存储本应用的相关设置
public static final int TXT_RMS_APP_STORENAME = TXTID++;
/*
* 各个界面的标题文字
*/
public static final int TXT_T_DISPLAYMMS = TXTID++;
public static final int TXT_T_PUSH_REGISTRY = TXTID++;
public static final int TXT_T_ABOUT = TXTID++;
/*
* 功能菜单的菜单选项文字
*/
public static final int TXT_C_DISPLAYMMS = TXTID++;
public static final int TXT_C_REGISTER = TXTID++;
public static final int TXT_C_UNREGISTER = TXTID++;
public static final int TXT_C_OK = TXTID++;
public static final int TXT_C_CANCEL = TXTID++;
public static final int TXT_C_BACK = TXTID++;
public static final int TXT_C_QUIT = TXTID++;
public static final int TXT_C_PLAYMUSIC = TXTID++;
public static final int TXT_C_PLAYAGAIN = TXTID++;
public static final int TXT_C_STOPMUSIC = TXTID++;
/*
* 关于我关于这个程序的说明性文字
*/
public static final int TXT_ABOUT = TXTID++;
/*
* 报告接收短信正在进行中的信息文字
*/
public static final int TXT_T_PARSE_PROGRESS = TXTID++;
/*
* 报告接收短信成功或错误的信息文字
*/
public static final int TXT_PARSEMMS_ERROR_TITLE = TXTID++;
public static final int TXT_PARSEMMS_ERROR_MSG = TXTID++;
public static final int TXT_PARSEMMS_SUCC_TITLE = TXTID++;
public static final int TXT_PARSEMMS_SUCC_MSG = TXTID++;
/*
* 报告启动时列出连接出现异常的信息文字
*/
public static final int TXT_LISTCONNECTIONS_ERROR_TITLE = TXTID++;
/*
* 提供默认的短信端口号
*/
public static final int TXT_T_DEFAULT_SMS_PORT = TXTID++;
/*
* 提供默认的短信协议号
*/
public static final int TXT_T_DEFAULT_SMS_PORTOCOL = TXTID++;
/*
* 提供默认存储的音乐文件名
*/
public static final int TXT_T_DEFAULT_MUSIC_FILENAME = TXTID++;
/*
* 在这个程序的RMS存储的项目的key.
*/
public static final int RMS_KEY_SMSPORT = 0;
// Image keys
private static final int OFFSET_IMG = 100;
public static final int IMG_ABOUT = 100;
public static final int IMG_COMMAND = 101;
public static final int IMG_EXIT = 102;
public static final int IMG_REGISTER = 103;
public static final int IMG_LOGO = 104;
public static final int IMG_GOTIT = 105;
// Text data
protected static final char[][] TEXTBUF = {
"MMSAutoLoader".toCharArray(),
/*
* RMS Name
*/
"receivemmsRMS".toCharArray(),
/*
* 各个界面的标题文字
*/
"显示短信内容".toCharArray(),
"注册自动启动功能".toCharArray(),
"关于".toCharArray(),
/*
* 功能菜单的菜单选项文字
*/
"显示消息".toCharArray(),
"推送功能注册".toCharArray(),
"推送功能反注册".toCharArray(),
"确定".toCharArray(),
"取消".toCharArray(),
"返回".toCharArray(),
"退出".toCharArray(),
"Play(播放音乐)".toCharArray(),
"Replay(重新播放)".toCharArray(),
"Stop(停止播放)".toCharArray(),
/*
* 关于我关于这个程序的说明性文字
*/
("MMSAutoLoader-利用PushRegistry特性注册监听特定短信端口,从而完成短信触发MIDlet自动启动。\n" +
"由郑昀编写,为了演示WMA和PushRegistry联合使用方法,并非商业应用,保留郑昀所有权利。\n" +
"应用于MIDP2.0的手机。\n" +
"GoogleTalk>> zhengyun@gmail.com \n" +
"Blog>> http://zhengyun_ustc.cnblogs.com/ \n" +
"Version>> 0.1.0 \n" +
"Date>> 2005.11.3").toCharArray(),
/*
* 报告接收短信正在进行中的信息文字
*/
"正在接收中...".toCharArray(),
/*
* 报告接收短信成功或错误的信息文字
*/
"接收错误".toCharArray(),
"接收时发生异常:".toCharArray(),
"上次接收成功".toCharArray(),
"WMA-->PushRegistry测试成功!!".toCharArray(),
/*
* 报告启动时列出连接出现异常的信息文字
*/
"列出PushRegistry连接出现异常".toCharArray(),
/*
* 提供默认的短信端口号
*/
"8341".toCharArray(),
/*
* 提供默认的短信协议号
*/
"sms://:".toCharArray(),
/*
* 提供默认存储的音乐文件名
*/
"/res/music/changjin.amr".toCharArray(),
};
/** Image cache */
protected static Hashtable m_images = new Hashtable();
// Image resource names
protected static final String[] IMGNAME_MAP ={
"about.png",
"command.png",
"exit.png",
"register.png",
"logo.png",
"gotit.png",
};
/**
* Returns specified text as character array.
* @param id The id of the text.
* @return A text as char array.
*/
public static char[] getChars(int id)
{
return TEXTBUF[id];
}
/**
* Returns specified text as string.
* @param id The id of the text.
* @return A text as String.
*/
public static String getString(int id)
{
return new String(getChars(id));
}
/**
* Returns specified image.
* @param id The id of the image.
* @return An image.
*/
public static synchronized Image getImage(int id)
{
id -= OFFSET_IMG;
Image img = (Image)m_images.get(new Integer(id));
if (img == null)
{
try
{
/*
* 注意原来这里写的是"/" +,始终无法加载图像;
* 所以我改为了"/res/" +
*/
img = Image.createImage("/res/icons/" + IMGNAME_MAP[id]);
System.out.println("get image:/res/icons/" + IMGNAME_MAP[id]);
m_images.put(new Integer(id), img);
}
catch (Exception e)
{
System.out.println("Error getting resource img " + IMGNAME_MAP[id]
+ ">>" + e.getMessage());
e.printStackTrace();
}
}
return img;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -