ラベル バグ の投稿を表示しています。 すべての投稿を表示
ラベル バグ の投稿を表示しています。 すべての投稿を表示

2012年1月22日日曜日

Androidエミュレータで画像が表示されない問題の対策


Titaniumで作ったアプリをAndroidエミュレータで実行すると、画像が表示さない問題がある。
(Windowsのみという噂)


tiapp.xmlに、下記を記述する事で、画像が表示されるようになる。


<property name="ti.android.fastdev" type="bool">false</property>


ただ、FastDev(ソースの修正をエミュレータ再起動なしに即座に反映する仕組み)が

使えなくなってしまうというTitaniumのバグがある。


SDカードを使用できないようにする事で、

FastDevを有効にしたままエミュレータで画像を表示できるようになる。

ただし、ローカルファイルのみ。(リモートファイルは表示されなくなる)


SDカードを使用できないようにする設定は下記の通り。

1. 目的のエミュレータが起動中の場合は一旦終了。

2. Android SDK Managerを起動。

3. Virtual Device一覧で対象のAVD Nameを選択してEditクリック。

4. HardwareのNewをクリックし、「SD Card support」を選択してOK。

5. 「SD Card support」のValueを「no」に変更して「Edit AVD」をクリック。

6. エミュレータを起動して確認。



2012年1月13日金曜日

Titanium Studio+SVNのエラー回避

SVNでソース管理しているTitaniumプロジェクトを
実機転送やDistributeしようとすると、エラーが発生して転送できない。

※Androidしか試してないけど、iPhoneだとどうかな。

で、ビルド用スクリプトを修正して対応する方法は下記の通り。(SDK1.7.5の場合)


まず、C:\Users\ユーザ名\AppData\Roaming\Titanium\mobilesdk\win32\1.7.5\android\builder.py
をエディタで開き、「fileset = []」という記述を探す。

そのすぐ下の部分で、下記のように追記する。

オリジナル:
for root, dirs, files in os.walk(os.path.join(self.top_dir, "Resources")):
        for f in files:
            path = os.path.join(root, f)
            if is_resource_drawable(path) and f != 'default.png':
                fileset.append(path)
下記のように追加(2行目、3行目、5行目):
for root, dirs, files in os.walk(os.path.join(self.top_dir, "Resources")):
        for name in ignoreDirs:
            if name in dirs: dirs.remove(name)
        for f in files:
            if f in ignoreFiles: continue
            path = os.path.join(root, f)
            if is_resource_drawable(path) and f != 'default.png':
                fileset.append(path)


これで、無事にエラーなく実機転送できた!


gitを使えばいいのだろうけど、なんだか難しくてよく分からず・・・・
慣れたSVNの方がいい♡

2012年1月4日水曜日

Titanium Mobile 1.8のバグ

追記: このバグはSDK1.8.1で解消されました。(2012/02/01)


SDK1.8.0.1で、TableViewのdeleteRowを実行すると、
必ず1番目の行が削除されるというバグ。 (2012/01/04時点)


他にも色々とバグがあるようなので、次のバージョンが出るまでは1.7.5を使おう。


http://jira.appcelerator.org/browse/TIMOB-6858


1.8になって、メソッドの数が5倍以上になっているので、高機能ではあるが、
まだテストが追いついていないようだ。

■1.7.5のAPIの数
Modules: 35
Objects: 95
Methods: 915
Properties: 2880
http://developer.appcelerator.com/apidoc/mobile/1.7.5/

■1.8.0.1のAPIの数
Modules: 35
Objects: 112
Methods: 5178
Properties: 2847
http://developer.appcelerator.com/apidoc/mobile/1.8.0.1/

2012年1月3日火曜日

Androidエミュレータで画像が表示されない

tiapp.xmlに下記を追加すると表示されるようになる。

<property name="ti.android.fastdev" type="bool">false</property>



これはTitanium Studioのバグ。
Fastdevを無効化してしまうため、辛いものがある。


画像を確認したいときだけ上記の設定をし、それ以外のときはtrueにして
Fastdevを活用するようにしよう。

2011年10月5日水曜日

Could not locate the Android SDK at the given path

Titaniumに、Andoroid SDKを認識させるため、

「Window→Preferences→Aptana Studio→Titanium」を開き、

「Android SDK Directory」にAndroidインストールフォルダを設定するのだが、

ここに、例えば「C:\Program Files\Android\android-sdk」と正しいフォルダをセットしても

「Could not locate the Android SDK at the given path」というエラーメッセージが出てしまう。


どうも、Android SDK2.1(API 7)がインストールされていないとだめ
らしい。(Titanium Studio 1.0.4)

SDK Managerを起動し、上記バージョンのAndroid SDKをダウンロード&インストールすると、

エラーが出なくなった。

http://developer.appcelerator.com/question/121567/could-not-locate-the-android-sdk-at-a-given-path-in-preferences--android-sdk-directory

エミュレータ起動構成ダイアログのBrowseボタンが反応しないバグ

2011/11/01: Titanium Studio 1.0.6では下記問題は解消されている。


Titanium StudioでMobileアプリプロジェクトを新規作成後、

「Run→Run Configurations...」を選択してAndroidエミュレータを新規作成しようとするが、

ダイアログで「Browse」ボタンをクリックしても何も反応しない。(v1.0.4)

これはTitanium Studioのバグ(とほほ)で、以下のように対処する。

--------------------------------------------------

下記フォルダを開く。
Titanium Studioのworkspaceフォルダ\.metadata\.plugins\org.eclipse.debug.core\.launches

ここに、エミュレータ起動構成ファイル(.launch)があるので、

目的のファイルをテキストエディタで開く。

<stringAttribute key="ATTR_PROJECT_NAME" value=""/>

このvalue=""に、目的のアプリプロジェクトの名前を記述して保存する。

例: <stringAttribute key="ATTR_PROJECT_NAME" value="Test1"/>

Titanium Studioを再起動して、再度プロジェクトを選択し、「Run→Run Configurations...」

とすると、ダイアログの「Project」の所に、名前が入るようになり、

エミュレータの起動構成が作成できる。


※なお、ここで Android APIの選択肢で「Google APIs Android ...」を選択しておいた方が無難。