I also notice one other special feature on the N504 - in email settings:
"wake up i-appli". Can't see this on the P.
Just guessing, but I assume this is a feature that allows email to somehow
be tagged to launch a particular i-appli - which would be very neat. So for
example I can send animated messages that trigger the phone to launch my own
java player for those type of messages...
Brew1.0+ has a similar feature where an 'SMS' (whatever that is in
cdma-land) can start:
// Brew <appID>
Like a comment in the sms which then triggers an app to launch. Of course
the SMS is just a notification of the message, the content sits on the
server.
Does anyone have a link to the API calls for this?
----
Few other obvious differences:
N
is able to take a 640x480 image
has 3X zoom
P
has more ram (as per the old 504)
has two cameras (inside facing one is a wider angle)
/dc
> -----Original Message-----
> From: keitai-l-bounce@appelsiini.net [mailto:keitai-l-bounce@appelsiini.
> net]On Behalf Of Colin Mack
> Sent: 2002年12月2日 14:07
> To: keitai-l@appelsiini.net
> Subject: (keitai-l) Re: 504is compared ?
>
>
>
>
> On 2002.12.2, at 02:38 AM, dc wrote:
>
> >
> > How do the 504is models compare? Are there any significant feature
> > differences?
> >
> > I heard conflicting reports that only the P actually had a java api to
> > the
> > camera, but this amount of non-standardisation seems unlikely from
> > docomo.
> >
>
>
> I can't speak from personal experience on this yet, but there is a
> thread on the JavaHz (japanese) mailing list that indicates that such
> an API exists, and at least some people have had success in using it.
> I've copied in a couple of mails below for "evidence", although now
> looking at them it does not appear to be strictly a P feature, as it
> looks a lot like the API (see 2nd mail w/ source code) is coming from
> nttdocomo.opt.ui, which would indicate it is not a P-only feature, but
> an optional thing that some other makers may be supporting as well.
>
>
> ++++++++++++++++++++++++++++++++++++
>
> Date: 2002.11.28 18:07:12 Asia/Tokyo
> To: java@gigahz.net
> Subject: Re: [JavaHz:2265] iアプリのカメラ制御について
> Reply-To: java@gigahz.net
>
>
> On Thu, 28 Nov 2002 17:33:09 +0900
> <kurosaki.k@md.neweb.ne.jp> wrote:
>
> > Camera.takePicture()でカメラを起動し、画像をカメラオブジェクト内に保
持。
> > と、ここまではいいのですが、保存した画像を表示させることが出来ずにいま
す
> 。
> > Camera.getImage()メソッドあるいは、Camera.getInputStream()メソッドの使
い
> 方を
> > 教えていただきたいと思います。
>
> まだ試してないので間違っていたらすみません。
>
> APIドキュメントによると、Camera.getImage()はMediaImageオブジェクトを返す
> との事なので、
>
> int index = 0;
> MediaImage mi = Camera.getImage(index);
> mi.use();
> Image img = mi.getImage();
>
> みたいな感じだと思います。
>
> Camera.getInputStream()の方は、
>
> int index = 0;
> int length = Camera.getImageLength(index)
> byte[] imgbuf = new byte[length];
> InputStream in = Camera.getInputStream(index);
> int offset = 0;
> for(;;) {
> int num = in.read(imgbuf, offset, length);
> if (num < 0) {
> imgbuf = null;
> break;
> }
> offset += num;
> length -= num;
> if (length == 0) {
> break;
> }
> }
> in.close();
>
> で、imgbuf内にバイト列が入ると思います。
>
> > また、カメラオブジェクト内の画像はスクラッチパッドに保存しなければなら
な
> いの
> > でしょうか。
>
> 単に表示するだけならその必要はないと思います。保存したい場合はバイト列を
>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> From: <kurosaki.k@md.neweb.ne.jp>
> Date: 2002.11.29 12:34:28 Asia/Tokyo
> To: <java@gigahz.net>
> Subject: Re: [JavaHz:2265] iアプリのカメラ制御について
> Reply-To: java@gigahz.net
>
> 蒔田です。
> 緒方さん、返信していただいて大変感激しております。
> 早速試してみました。
> 以下の様なコードにしましたが、画像は表示されませんでした。
> 大変恐縮ですが、ご指摘の程よろしくお願いいたします。
>
> import com.nttdocomo.opt.ui.*;
> import com.nttdocomo.ui.*;
> import java.io.*;
> import javax.microedition.io.*;
>
> public class Legend extends IApplication{
>
> public static MainCanvas canvas;
>
> public void start(){
> canvas = new MainCanvas();
> Display.setCurrent(canvas);
> canvas.exe();
> }
> }
>
> class MainCanvas extends Canvas{
> private static MediaImage mi;
> private static Image img;
> private static Camera cm;
>
> public MainCanvas(){
> setSoftLabel(Frame.SOFT_KEY_1,"終了");
> }
>
> public void exe(){
> Graphics g = getGraphics();
>
> try{
> cm.getCamera(1).takePicture();
> while(true){
>
> write();
> read();
> g.lock();
> g.setColor(Graphics.getColorOfName(Graphics.BLACK));
> g.fillRect(0,0,getWidth(),getHeight());
> g.drawImage(img,0,0);
> g.unlock(true);
>
> Thread.sleep(50);
> }
> }catch (Exception e){}
> }
> public void paint(Graphics g){}
>
> public void write(){
> int index = 0;
> try{
> int length = (int)cm.getCamera(1).getImageLength(index);
> byte[] imgbuf = new byte[length];
> InputStream in = cm.getCamera(1).getInputStream(index);
> int offset = 0;
> for(;;) {
> int num = in.read(imgbuf, offset, length);
> if (num < 0) {
> imgbuf = null;
> break;
> }
> offset += num;
> length -= num;
> if (length == 0) {
> break;
> }
> }
> in.close();
> OutputStream out = Connector.openOutputStream("scratchpad:///0");
> out.write(imgbuf);
> out.close();
> }catch (Exception e){}
> }
>
> public void read(){
> mi = MediaManager.getImage("scratchpad:///0");
> try{
> mi.use();
> }catch(Exception e){}
> img = mi.getImage();
> }
>
> public void processEvent(int type, int param){
> if(type==Display.KEY_PRESSED_EVENT){
> if(param==Display.KEY_SOFT1){
> IApplication.getCurrentApp().terminate();
> }
> }
> }
> }
>
>
> This mail was sent to address dc@gamelet.com
> Need archives? How to unsubscribe? http://www.appelsiini.net/keitai-l/
Received on Mon Dec 2 11:32:11 2002