-1

各 (Apple と Android) 市場にデプロイせずに、PhoneGap + jQuery Mobile アプリケーションに変更を加えるための最良のアプローチは何かと考えていました。私が最近行った変更のほとんどは、Phonegap 機能の追加ではなく、厳密にマークアップに対するものです。マークアップの特定の部分に phoneGap 機能を追加した場合、これを変更する必要があることを認識しています。
しかし、厳密にマークアップされている一部のページでは、変更を毎回市場に展開する必要がないように、そのコンテンツを個別に配信するにはどうすればよいでしょうか? 前もって感謝します。

編集: iOS の利用規約により、これは不可能のようです: Apples TOS - #2.7: https://developer.apple.com/appstore/resources/approval/guidelines.html

4

2 に答える 2

1

(私の理解が正しければ、既存の phoneGap アプリにいくつかのマークアップ変更 (新しいコンテンツやレイアウトなど) を加えており、その変更を市場に出さずに個々の携帯電話に展開したいと考えていますか?機能は変わりますが。

残念ながら、これは主要な機能変更を実装した場合とまったく同じです。再展開して市場を通過する必要があります。

ただし、PhoneGap と Web テクノロジの優れた機能により、新しいコンテンツを動的にロードして、この問題が将来再発するのを防ぐ何らかの機能を実装する価値があるかもしれません。アプリの初期化時に新しいコンテンツをチェックする単純な自動チェックが機能する可能性があります。または、外部サーバーへの AJAX 要求を起動する単純な [ Fetch New Content ] ボタンで十分です。

これは、コンテンツをアプリケーションにハードコーディングできないことを意味しますが、ローカル ストレージ オプション (つまりwebSQL ) を使用すると、コンテンツを保存し、ロード時に取得できます。次に、更新時にストレージを更新するだけです。

これを行うことで、アプリをオフラインで機能させる必要があるガイドラインを満たしながら、新しいコンテンツをデバイスに自由にプッシュできるようになります。アプリ ストアのガイドラインに違反するべきではありません (私が知っていることです)。ただし、@ninjasense がコメントで述べているように、外部ソースからコンテンツをドラッグするという事実に注意する必要があります*。また、更新するために市場に出回る理由にもなります。結局のところ、主要な新機能が追加されたのです。;)

お役に立てれば!

※iOSでの販売を予定している場合、アプリの更新方法として言及することは絶対にありません。そうは言っても; あなたが実際に Android をターゲットにしていることに気付きました - これは許容できるはずです。主な問題は、コードを外部ソースからダウンロードできるようにすることで、後でセキュリティの脆弱性、貧弱なコード、またはバグを導入する可能性があることです。(これは、PhoneGap を使用しているため可能であり、理論的には、このメカニズムを使用して Javascript をクライアント ハンドセットにプッシュできます)。

Apple TOS #2.7 は、コードをダウンロードする場合にのみ適用されます - 「何らかの方法または形式でコードをダウンロードするアプリは拒否されます」 ; 追加の機能やネイティブなものを追加していないため、新しいコンテンツをダウンロードしていると主張することができます。Web ブラウザーに似た HTML をダウンロードしています。つまり、Chrome や Safari、その他のソーシャル ネットワーキング アプリです。したがって、変更を更新と呼ぶことを避けるのはなぜですか。単にコンテンツが変更されるだけであり、コンテンツを表示するためにマークアップをダウンロードしているという事実を強調します。

アプリ ストアの承認ガイドラインにアクセスできない場合は、ここに公開 PDFがあります。

于 2012-10-29T17:41:19.763 に答える
0

サーバーからコンテンツを提供していて、マークアップの変更がローカルでアプリケーションに影響を与えない場合 (つまり、アプリへのコード変更は必要なく、マークアップの変更はバックエンドから提供されます)、問題はなく、条件に違反していません。実際、アプリケーションを変更する必要がある場合は、再デプロイする必要があり、明らかに条件に違反する方法はありません。したがって、それを行う明白な方法は1つしかないようです。

于 2012-10-29T18:47:31.190 に答える