iPhone / iPadでSafariからFlashを実行する

Flashコンテンツが必要なページがありますが、iPhoneとiPadではフラストレーションがあります。
たとえば、Flashグラフィック。
次の2つの方法があるようです。
1. Flash html5を置き換えます
2.フラッシュを静止画像に置き換えます

しかし...しかし、あなたは少し倒錯することができます。 3番目の方法は、カットの下にあります。

残念ながら、この方法は普遍的ではなく、すべてのアプリケーションに適しているわけではありませんが、ページにFlashグラフィックスなどを表示する必要がある場合は、バタンとやります。

アイデア


1. iPhoneバージョンのアプリケーションを作成する
2.アプリケーションでInfo.plistを編集し、アプリケーションのURLスキームを追加します(たとえば、anychart://)
3.ページにiphone / ipad検出を追加し、iTunesにリダイレクトするか、アプリケーションを開きます
出来上がり。 ユーザーはグラフを見ることができます。

実装


iPhoneバージョンのアプリケーションを作成する

最初のステップについては説明しません。 誰が気にする-habratopik: habrahabr.ru/blogs/Flash_Platform/104538

アプリケーションでInfo.plistを編集し、アプリケーションのURLスキームを追加します(たとえば、anychart://)

2番目のステップはもう少し興味深いものです。 バンドルされたFlash-IPAを開き、その中のファイルを修正する必要があります。
すべてが非常に簡単です:
1. ipaの名前をzipに変更します
2.解凍する


3.解凍されたペイロードフォルダーに移動し、アプリケーションフォルダーを確認します。 それに移動します(Macでは、[パッケージの内容を表示]を使用)


このフォルダーには、必要なInfo.plistファイルが含まれています
Macでは、プロパティリストエディターで編集しますが、任意のテキストエディターで編集できます。
ルートにURLタイプを追加し、その中にアイテム0でURLスキームを追加し、その中にアプリケーションのURLスキームを既に入力する必要があります。 たとえば、myflashapp:// param = 123という形式のリンクを使用してアプリケーションを開くには、myflashappを登録する必要があります。

画面:


Macが手元になく、テキストエディターで修正される場合は、ルート<dict>ノードに次を追加する必要があります。
<key> CFBundleURLTypes </ key>
<配列>
<dict>
<key> CFBundleURLSchemes </ key>
<配列>
<string> myflashapp </ string>
</ array>
<key> CFBundleURLName </ key>
<string> </ string>
</ dict>
</ array>

画面:


それだけです 次に、ファイルを保存し、ペイロードをzipアーカイブに戻し、名前をipaに変更します。 そして、デバイスに置きます。

これで、リンクを介してアプリケーションがSafariで開きます。

例:
<a href= wontestflashapp://?test=123>>アプリを開く</a>

スマートリンクを追加する

アプリケーションを開くか、iTunesにリダイレクトしてアプリケーションをインストールする単純なコード:

setTimeout(関数(){
window.location = " itunes.com/apps/yourappname ";
}、25);

//「custom-uri://」が登録されている場合、アプリはすぐに起動し、
//タイマーは起動しません。 設定されていない場合、「ページを開くことができません」という "いメッセージが表示されます。
// App Storeアプリケーションの起動前のダイアログ
window.location = "custom-uri://";

ボーナスパック

アプリケーションに渡されたパラメーターは、InvokeEvent.INVOKEでキャッチされます。

Source: https://habr.com/ru/post/J105200/


All Articles