0

データベースの手がかりリポジトリからランダムな手がかり (テキスト) と画像 (手がかりと画像がセットで 1 行) を選択する iOS ゲームを作成しています。データベース行を引き出すことができる webMethods と関数を備えた Web サービスがあります。(手がかりをテスト済み)Googleで、dbからiOSに画像をインポートする方法に関する記事を検索しましたが、役に立ちませんでした。

Web サービス (c# を使用してビルド) によって DB からイメージをインポートする方法は? 誰かが私を正しい方向に導いてくれますか? プレーヤーがプレイを終了した後、手がかりと画像が一時配列から消去されるように、これを mutableArray に格納したいと思います。(アプリに画像を入れたくありません。アプリが非常に大きくなり、ユーザーが独自の手がかりと画像をアップロードできるため、データベースからのライブフィードが理想的な方法です.

現在、画像をインポートする際にWebサービス側で立ち往生しています。現在、リストを使用して手がかりを保存していますが、画像を保存するために何を使用すればよいかわかりません。オブジェクトを格納するArrayListを使おうと思っているのですが、iOS側で画像に変換する方法がわかりません。そして、上で述べたように、Web サービスを介して iOS アプリに画像をインポートするチュートリアルや例が見つからないようです。(または、間違った検索用語を使用していますか)

いずれかが私を助けてくれるか、画像と手がかりのライブ更新を可能にする代替ソリューションを提供してくれると助かります。

編集 - ImageList() と List が見つかりました。私は今どちらを使うべきですか?また、画像ファイルを作成することもわかりました -> image testfile;

EDIT2 - problem I'm facing
-dealing with image file (image? imagelist?
-when drawing datarow from DB in  webservice, how do i deal with the image file. (guessing ImageList or List<image> (after some luck on research)
-assuming 2nd point works fine, i should be able to solve the client side
(sorry, noobie at webservice, )

.

what I have
-webservice that draw datarow from database for clue(string) (tested and working fine with my function)
-iOS client side with RESTful architecture

.

what I need
-webservice that draw datarow from database for picture(image (format not so important yet)) (code should be similar to drawing clue, only which function to store it in. (using List<string> for clues)
4

2 に答える 2

2

自分よりも少し先に進んでいるように聞こえます。一度に 1 つの問題だけを解決してみてください。あなたははるかに進歩するでしょう。

まず、iOS アプリケーションに画像をダウンロードする方法を知っていますか? Google Doodle のような公開されている非常に単純な画像をダウンロードしてみてください https://www.google.com/logos/2012/gymnastics-2012-hp.jpg。使用しているどの IOS アプリケーション ツールキットにも、イメージをダウンロードして HTTP 経由で表示する方法のウォークスルーが必要です。

次に、Web サーバーで画像ファイルをホストする方法を知っていますか? ランダムな JPG または PNG 画像を自分でダウンロードして、サーバー上で静的ファイルとしてホストしてみてください。次に、IOS アプリケーションをその静的ファイルにポイントし、Google Doodle で行ったのと同じようにダウンロードします。

これらのステップが両方とも機能する場合は、サーバーで動的イメージのホストを開始できます。ページ (ASP.NET を使用している場合) またはコントローラー パス (MVC を使用している場合) を作成し、C# コードを使用Response.TransmitFileして画像をクリックストリームにアップロードします。再度、そのイメージを IOS アプリケーションにダウンロードして、動作することを確認します。

最後に、サーバー アプリケーションを変更して、クエリ文字列 (例: myhost.com/mypage.aspx?image_id=1) または MVC パス (例: myhost.com/images/1) のいずれかでパラメーターを取得します。その ID 番号を使用して、データベースから画像情報を取得します。次に、画像をクライアントに送信します。すべてがうまくいけば、IOS アプリでこのイメージを取得できるはずです。

これがあなたのプロジェクトに近づくのに役立つことを願っています!

于 2012-08-11T04:27:01.960 に答える
1

iOSでのプログラミング経験はありませんが、そのためのRESTful APIを用意するのが一番簡単だと思います。REST ガイドラインを念頭に置くと、最終的にはリソースを定義する Web サービスになり、クライアントは特定のファイルを要求するだけで済みます (クライアントは画像の ID/名前を何らかの形で知っていると思います)。これには大きな利点が 1 つあります。サーバー側で (どのプラットフォームでも) 開発が非常に簡単です。

クライアント側の場合: 1.WebRequestオブジェクトを使用して http get リクエストを作成します 2. データがダウンロードされるのを待ちます (バックグラウンド ワーカーまたは別のスレッドを使用して、アプリがブロックされないようにすることができます) 3. リクエストが完了し、応答オブジェクトを取得します - 送信されたものを読んでください。バイナリイメージになります。4. バイナリ データ (イメージ) を使用して、アプリに表示します。

オブジェクトの使用方法のサンプルはWebRequest、別の SO スレッドで提供されています: https://stackoverflow.com/a/11891240/165751

注:サーバー側のDB(または実際にはあらゆる種類のストア)から画像を取得して、Webサービスが画像を読み取ってWeb応答として返す方法を知っていると思います。

サーバー側のテクノロジに関しては多くの可能性がありますが、.Net テクノロジ スタックを使用したい場合は、WCF REST サービス テンプレート 40(CS)を参照することをお勧めします。これまで使用してきました。 (そして私のサービスも画像を返していました:)そして私はそれにとても満足していました.

于 2012-08-10T05:37:19.443 に答える