今日は頭が働かず、集中力も切れていたのでチュートリアルは明日に持ち越し。そのかわり、設計図を考えていました。
難所としては、どうやって音をならすか?ということです。iphoneではJailbreakしないと音楽ライブラリからデータをもってこれないようになっているので、うんうんうなっていました。
ネットをふらふら流れて、なんかいいアプリないかしら?と思っていると、iphoneでニコ動を楽しむアプリの存在や、Orbの存在を知りました。
まあ、結局自分のPCをサーバーとして公開しちゃってるわけですが、これだったらなんか出来そうかも?ここらを中心に勉強していくのもよいかも、、、
目次
2008年10月28日火曜日
2008年10月26日日曜日
SDK Connections Inspectorを使ってみた
iCodeBlogをちまちまと続けています。前の段階で作ったインターフェイスと、コードを繋げてみました。iPhone Programming Tutorial - Connecting Code to An Interface Builder Viewってチュートリアルです。iCodeさんのチュートリアルは大変わかりやすくてサクサク進むのですが、途中でちょっと行き詰まりがあったのでメモ。
>Click in that circle and drag the blue line to the File’s Owner object and release it.
というこの一文。File's Owner objectってどれのこと?

ちょこっと悩んだのですが、左下に注目。File's Owner objectっていうアイコンある!とドロップしてみるとドンピシャ!解決でした。

でこんな感じのアプリがものの20分たらずで完成。先行きは明るいよ〜☆
SDK これはすごいよ!
ちまちまとSDK
iCodeBlogのチュートリアルをちまちま
CocoaのライブラリをもとにHelloWorrdしてみようってやってみました。
んがぁ!これがすっごい、、、、
カンタン♪

ViewbasedApplicationを最初に選択すると、“ファイル名ViewController.xib”ってファイルが作られてます。これをクリック。すると上の画面が出てきます。
なんだか右側にCocoaのAPI部品たちがいっぱい。ワクワクしながらドロップしてみると、カンタンに追加されちゃいました。

オーサリングツールみたい!Appleすごいよ本当にって感動しました。
iCodeBlogのチュートリアルをちまちま
CocoaのライブラリをもとにHelloWorrdしてみようってやってみました。
んがぁ!これがすっごい、、、、
カンタン♪

ViewbasedApplicationを最初に選択すると、“ファイル名ViewController.xib”ってファイルが作られてます。これをクリック。すると上の画面が出てきます。
なんだか右側にCocoaのAPI部品たちがいっぱい。ワクワクしながらドロップしてみると、カンタンに追加されちゃいました。

オーサリングツールみたい!Appleすごいよ本当にって感動しました。
はじめての SDK
久しぶりです。気づくと一人になっていました。これじゃ“どうしていないの?”ですね(笑)
さて、今学期の活動のゴールはiphone アプリ開発としました。
当面の目標としては、
・音楽ファイルの再生(podcastがいいな)
・LastFMのAPIの活用
この二つです。まずはこれが一山。
とは言え、SDKの世界はHello Worldから。SDK初心者、入門のためのステップ。
こちらのサイトを参考にやってみたら、できたよお母さん!!

ちなみに、Apple側ではスクリーンショットなんかをとって、公開するのはやめてね、って言っているようです。なので、詳細は割愛。といっても、たくさんチュートリアルサイトはあるのですが。
SDKにはXcode、Cocoa、Object-Cの知識が必要だっていうけど違いは何?どういう関係なんだろ?ここに触れてる人があまり居なかった。
これはすべてバラバラの言語だと思っていた私。。。
実際には
Xcode:appleの統合開発環境
Cocoa:MacOS X用のAPI
Object-C:プログラミング言語
ふむ。自分的にまとめていうと
・Macは、Object-Cで書かれているプログラムでネイティブアプリを作る事ができます。
・でも一からメソッドを作るのは大変ですよね。文字を表示させるのだって大変。それを一行、「文字出せ!」って書くだけで、実行してくれるのがAPI。MacネイティブアプリではCocoaってのがそれで、とってもポピュラー。
・Xcodeというのは、それらのプログラムを書いて、ビルド、実行まで可能にしてくれる便利ツール。JavaとかPythonとか、Emacsで書いたものをTerminalでコンパイルして実行、、、という手順をとりますが、Xcodeはインターフェイスでポチっと「実行」しちゃえばOK!素晴らしい。
よって,
Object-Cは言語として構文を勉強する事
Cocoaは日々、「あら、こんなことができるようになったのね」と目を見張らせる事
Xcodeは使い勝手、便利機能などを学んで行く事
こんな感じで対応していくのです。巷には「Xcode攻略!」とか「はじめてのCocoa」とかいろいろ本があってぐるぐるしてたけどスッキリしました。
さあ、まだまだチュートリアルがんばりますよ!
さて、今学期の活動のゴールはiphone アプリ開発としました。
当面の目標としては、
・音楽ファイルの再生(podcastがいいな)
・LastFMのAPIの活用
この二つです。まずはこれが一山。
とは言え、SDKの世界はHello Worldから。SDK初心者、入門のためのステップ。
こちらのサイトを参考にやってみたら、できたよお母さん!!

ちなみに、Apple側ではスクリーンショットなんかをとって、公開するのはやめてね、って言っているようです。なので、詳細は割愛。といっても、たくさんチュートリアルサイトはあるのですが。
SDKにはXcode、Cocoa、Object-Cの知識が必要だっていうけど違いは何?どういう関係なんだろ?ここに触れてる人があまり居なかった。
これはすべてバラバラの言語だと思っていた私。。。
実際には
Xcode:appleの統合開発環境
Cocoa:MacOS X用のAPI
Object-C:プログラミング言語
ふむ。自分的にまとめていうと
・Macは、Object-Cで書かれているプログラムでネイティブアプリを作る事ができます。
・でも一からメソッドを作るのは大変ですよね。文字を表示させるのだって大変。それを一行、「文字出せ!」って書くだけで、実行してくれるのがAPI。MacネイティブアプリではCocoaってのがそれで、とってもポピュラー。
・Xcodeというのは、それらのプログラムを書いて、ビルド、実行まで可能にしてくれる便利ツール。JavaとかPythonとか、Emacsで書いたものをTerminalでコンパイルして実行、、、という手順をとりますが、Xcodeはインターフェイスでポチっと「実行」しちゃえばOK!素晴らしい。
よって,
Object-Cは言語として構文を勉強する事
Cocoaは日々、「あら、こんなことができるようになったのね」と目を見張らせる事
Xcodeは使い勝手、便利機能などを学んで行く事
こんな感じで対応していくのです。巷には「Xcode攻略!」とか「はじめてのCocoa」とかいろいろ本があってぐるぐるしてたけどスッキリしました。
さあ、まだまだチュートリアルがんばりますよ!
2008年7月15日火曜日
2008年7月12日土曜日
Flash+マイコン
やすこ
今日はこーりゃんからシリアルからとってきた値をFlashで受け取る方法forMacを教わりました。
ちなみにこのワザは、Arduinoと同じドライバを使っていればできる!はず、、
まず、Flash単体では、シリアル通信は出来ないので、
serial proxyを使います。ArduinoのDownloadページ一番下にリンクが貼ってあるので、そこからDownload!
1、解凍し、serproxy.cfgをテキストエディターで開けます。
2、マイコンをPCと接続します。
3、Processingでデバイスを調べます。

Processingに書き込むソースはこんな感じかな。別にListをプリントしてくれればなんでも良いです。
import processing.serial.*;
Serial myPort;
void setup(){
println(Serial.list());
myPort = new Serial(this, Serial.list()[0],9600);
}
こいつをProcessingに書き込んでRunします。すると、リストが出てくるので、Port1にあたるものをコピー。
画像の場合だと、/dev/cu.usbserial-A10166Yですね。
4、serproxy.cfgの編集。

serial_device1=[さっきprocessingで調べたデバイス名]
を付け足します。
私は
serial_device1=/dev/cu.usbserial-A10166Y
を書き足しました。
出来たら上書き保存。
5、serproxyを立ち上げる。
serproxyをクリックするとそのままTerminalが立ち上がります。
ちなみに終了するときはcontrol+c(リンゴじゃないほうのcontrol)
5.5、Arduinoへの書き込み
下のファイルを動かすために書いたのはこんな感じ。はたやまさん、ありがとう。
int potPin = 2;
int ad;
void setup()
{
Serial.begin(9600);
}
void loop()
{
ad = analogRead(potPin);
Serial.println(ad/4);
delay(100);
}
6、Flashファイルを実行

今回ははたやまさんが2006のテクササイズで用意してくれたasファイルを使ってみました。
ソースはこんな感じ。値によって丸の大きさが変化します。
//import ArduinoSerproxy API これは以前はたやまさんが用意してくれたasファイルなのです。奥出研究室の特権ですね笑どうしても手に入れたいって人はご連絡くださいませ♪
import org.hatayan.util.arduino.ArduinoSerproxy;
//Create ArduinoSerproxyObject
var serial_net = new ArduinoSerproxy();
//Connect Comport Server.Input Server IPAdress and Port number.PortNumberはSerproxy.cfgに書いてあります。勝手に変更しないこと。
serial_net.openRemoteComport("localhost", 5331);
serial_net.onReceiveStr = function(serialObj:ArduinoSerproxy) {
var rsv = serialObj.getStr();
receive_txt.text=rsv;
trace(rsv);
_root.circle_mc._xscale=rsv;
circle_mc._yscale=rsv;
};
今日はこーりゃんからシリアルからとってきた値をFlashで受け取る方法forMacを教わりました。
ちなみにこのワザは、Arduinoと同じドライバを使っていればできる!はず、、
まず、Flash単体では、シリアル通信は出来ないので、
serial proxyを使います。ArduinoのDownloadページ一番下にリンクが貼ってあるので、そこからDownload!
1、解凍し、serproxy.cfgをテキストエディターで開けます。
2、マイコンをPCと接続します。
3、Processingでデバイスを調べます。

Processingに書き込むソースはこんな感じかな。別にListをプリントしてくれればなんでも良いです。
import processing.serial.*;
Serial myPort;
void setup(){
println(Serial.list());
myPort = new Serial(this, Serial.list()[0],9600);
}
こいつをProcessingに書き込んでRunします。すると、リストが出てくるので、Port1にあたるものをコピー。
画像の場合だと、/dev/cu.usbserial-A10166Yですね。
4、serproxy.cfgの編集。

serial_device1=[さっきprocessingで調べたデバイス名]
を付け足します。
私は
serial_device1=/dev/cu.usbserial-A10166Y
を書き足しました。
出来たら上書き保存。
5、serproxyを立ち上げる。
serproxyをクリックするとそのままTerminalが立ち上がります。
ちなみに終了するときはcontrol+c(リンゴじゃないほうのcontrol)
5.5、Arduinoへの書き込み
下のファイルを動かすために書いたのはこんな感じ。はたやまさん、ありがとう。
int potPin = 2;
int ad;
void setup()
{
Serial.begin(9600);
}
void loop()
{
ad = analogRead(potPin);
Serial.println(ad/4);
delay(100);
}
6、Flashファイルを実行

今回ははたやまさんが2006のテクササイズで用意してくれたasファイルを使ってみました。
ソースはこんな感じ。値によって丸の大きさが変化します。
//import ArduinoSerproxy API これは以前はたやまさんが用意してくれたasファイルなのです。奥出研究室の特権ですね笑どうしても手に入れたいって人はご連絡くださいませ♪
import org.hatayan.util.arduino.ArduinoSerproxy;
//Create ArduinoSerproxyObject
var serial_net = new ArduinoSerproxy();
//Connect Comport Server.Input Server IPAdress and Port number.PortNumberはSerproxy.cfgに書いてあります。勝手に変更しないこと。
serial_net.openRemoteComport("localhost", 5331);
serial_net.onReceiveStr = function(serialObj:ArduinoSerproxy) {
var rsv = serialObj.getStr();
receive_txt.text=rsv;
trace(rsv);
_root.circle_mc._xscale=rsv;
circle_mc._yscale=rsv;
};
登録:
投稿 (Atom)


