2017-04-05 19 views
2

Cordovaを使用する前に、電話言語を検出してURLに入れる動的パラメータを追加しました。これにより、Webサイトのページをユーザーの言語で表示できます。開始URLにパラメータを動的に追加

NSString * language = [[NSLocale preferredLanguages] objectAtIndex:0]; 
NSString *urlString = [NSString stringWithFormat: @"http://mywebsite.com/?language=%@", language]; 

しかし、コルドバを使用しては、静的なURLをロードするために私を強制的に、私はアプリが起動したときに、URLに言語パラメータを挿入するために何かできることはありますか?

ありがとうございました。

答えて

2

あなたが既に使用しているコードで電話言語を検出し、成功コールバックに次のようにJavaScriptを使用してウェブサイトにリダイレクトするpluginを作成することができます。

window.location.href = 'http://mywebsite.com/?language='+pluginResult;

ます。また、この中に追加することができます私は同意する権利復帰前didFinishLaunchingWithOptions方法、

NSString * language = [[NSLocale preferredLanguages] objectAtIndex:0]; self.viewController.startPage = [NSString stringWithFormat: @"http://mywebsite.com/?language=%@", language];

+0

私のアプリケーションのローカライゼーションプロセスは、php関数にどのように翻訳するかを指示するurlのパラメータに依存します。私は本当にURLにそれが必要です。 – tinyCoder

+0

ローカルURLをロードしていますが、CordovaアプリケーションにローカルPHPをロードすることはできません。 JavaScriptを使用してオンラインサーバーにリダイレクトすることはできますが、Cordovaアプリ内でWebサイトをロードするのは良い方法ではありません.Appleはあなたのアプリを承認しないかもしれません。 – jcesarmobile

+0

私はすでにCordovaに自分のリモートサーバーURLをロードしています!私はちょうど私のウェブサイトのURLを入れて、それは正常に動作している、とAppleはすでに私の友人の私の友人を承認した。 – tinyCoder

1

中にあなたAppDelegate.m @ jcesarmobileの答えの一部と一緒に。しかし、ユーザーの言語を検出するには、新しいプラグインを開発する必要はありません。globalization pluginが既にこの目的のために利用可能であると思います。

だから、うまくいけば、あなたは、好みの言語を取得し、このようにJavaScriptを使用してウェブサイトにリダイレクトする@jcesarmobileによって提案されたアプローチを使用するようにプラグインを使用することができます。

window.location.href = 'http://mywebsite.com/?language='+preferredLanguage;

はそれがお役に立てば幸いです。

関連する問題