1

ASP.Net MVCによって生成されているクライアントWebアプリ(Html 5、CSS、JQueryMobileなど)があります。ASP.Net MVCを使用して、ユーザーエージェントを従来のブラウザーまたはモバイルブラウザーとして識別しています。モバイルブラウザの場合は、モバイルビューをレンダリングします。このアプリは、デスクトップのブラウザー、またはモバイルデバイス(iPadおよびAndroidタブレット)のブラウザーを介してアクセスすると、設計どおりに機能します。

クライアントは、アプリをPhoneGapでラップして、GooglePlayとAppleストアの配布物を作成できるようにしたいと考えています。私はPhoneGapに比較的慣れていないので、私が採用したアプローチは、前述のアプリケーションのURLにアクセスするiframeを使用して簡略化されたhtmlページを作成することです。私の意図は、Dreamweaver CS 5.5とPhoneGapを使用してAPKファイルと同等のiPadを生成し、クライアントのアプリをさまざまなモバイルストアにロードできるようにすることです。

このアプローチが正しいかどうかはわかりません。それはうまくいくはずです:アプリを呼び出すiframeだけを持っている簡略化されたindex.htmlページ。コードは次のとおりです。

<html>
<head>... phoneGap.js..</head>
<body style="margin:0px;padding:0px;overflow:hidden">
    <iframe src="[URL TO WEBSITE HERE]" frameborder="0" style="overflow:hidden;overflow-x:hidden;overflow-y:hidden;height:100%;width:100%;position:absolute;top:0px;left:0px;right:0px;bottom:0px" height="100%" width="100%"></iframe>
</body>
</html>

上記のコードを使用してAPKファイルを作成し、IceCreamSandwhichを実行しているAndroidタブレットにロードしましたが、パフォーマンスがひどいです。ただし、同じAndroidタブレットのブラウザーからアプリにアクセスでき、すべてが設計どおりに機能します。

誰かがこれを機能させる方法について正しい方向に私を向けてください。ASP.NetMVCを変更できません。ASP.Net MVCによって生成されたモバイルアプリをパッケージ化して、GooglePlayとAppleStoreに配置できるようにする方法が必要です。

4

1 に答える 1

1

iframeで実行されているコードからphonegap.jsにアクセスできないため、現在のように機能させることができない可能性があります。

インデックスページをサーバーにリダイレクトすることもできますが、Appleがアプリストアを通じてこれを配布することを許可しない可能性が高いです。これには、phonegap /cordovajsファイルをサーバーに配置する必要もあります。

「典型的な」phonegap/cordovaアプリには、クライアント上に存在するリソースがあり(それらはアプリケーションにパッケージ化されています)、サーバーは、通常、REST +JSONAPIを介してデータを提供するためだけに存在します。

構築しているように聞こえるのは、ラップされたWebサイトです。これは、IMHOはアプリではなく、ブラウザーで使用する必要があります。

于 2012-05-03T23:47:41.433 に答える