6

UIWebViewコンポーネントを備えたネイティブiPhoneアプリがあります。Safariのタブバーオプションにある[ホーム画面に追加]ボタンを複製できるかどうかを確認しようとしています。

UIWebViewこれはネイティブアプリ内で可能ですか?

ありがとう!ブレット

4

3 に答える 3

5

[あなたの質問は、ボタン自体の外観を複製するのではなく、ホーム画面に追加することに関連するアクションを複製することに関するものだと思います(これはあなたが実際に書いたものです)。

他の人が言ったように、これは不可能です。

あなたができることは、プログラムでアプリ内から Safari を起動し、ロードするページの URL (あなたのページ) を与えることです。

ページが読み込まれると、ある種のアニメーションが表示され、ユーザーにホーム画面に追加ボタンがある場所が表示され、Web ページに表示されるリンクをクリックした後にそれを押すように指示されます。ユーザーがリンクをクリックすると、デスクトップに保存したいページに移動し、ユーザーがあなたの指示に従ってくれることを願っています。

独自の URL スキームを処理するようにアプリを登録すると、ユーザーは、アプリの URL スキームを使用してリンクをクリックすることで、Safari 内からアプリに戻ることができます。

ただし、Safari にシードする Web ページはリモート ページである必要があります。Safari にアプリのバンドル内のページを提供したり、Safari がアプリのサンドボックスからページを読み取ることができないため、アプリがダウンロードしたページを提供したりすることはできません。

于 2012-05-31T17:52:39.993 に答える
0

簡単に言えば、いいえ、できません。Appleはあなたを許しません。

他の可能性を考え出すのに役立つかもしれない同様の質問があります: iPhoneの「ホーム画面に追加」するためのJavascript?

頭のてっぺんから回避策を考えなければならない場合は、その方法を指示する JavaScript ポップアップを作成できます。このボタンをタップしてモバイル サファリに移動し、アクションをタップ -> ホーム画面に追加などのように言うことができます。

UIWebView のメソッドで Javascript を実行します。

- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script

お役に立てれば。

于 2012-05-31T16:38:44.307 に答える
0

アクティビティ項目としてあなたの URL で UIActivityViewController を使用できます

NSArray *activityItems = @[title, url];

そして、不要なアクティビティを除外できます。それが今のところ唯一の方法だと思います。

于 2014-03-08T08:20:56.437 に答える