2016-03-23 2 views
0

私はログインフォームを持つPhonegapアプリを持っています。ログイン機能は、ログインしたユーザーの言語を保存するためにlocalStorage.setItem()を使用します。そのため、次にアプリケーションを開くときに、ログイン前の画面でユーザーがどの言語を推薦するかを推測できます重要なデータではないので、localStorageが消去される可能性はありません。必要に応じて英語に戻ってしまいます。本当に私のニーズに完璧です。PhonegapアプリからAndroidサービスに変数を渡す

PhoneGapの外には、バックグラウンドで実行される別のサービスがあり、特定のユーザーの操作に応じて自動的に静的な電話番号への呼び出し+ Phonegap画面の1つを起動します。これは、次のようなコードは次のとおりです。

Intent callIntent = new Intent(Intent.ACTION_CALL); 
callIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
callIntent.setData(Uri.parse("tel:123456789")); 
startActivity(callIntent); 

Intent emergencyIntent = new Intent(getApplicationContext(), EmergencyActivity.class); 
emergencyIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
getApplicationContext().startActivity(emergencyIntent); 

このすべては、私たちはもはや自動化されたコールのための静的な番号を使用することにしましたことを除いて、完璧に動作します。代わりに、各ユーザーには特定のものが割り当てられます。したがって、関連する電話番号を保存するためにlogin関数を修正しました。この変数を読み込むために上記のコードを修正する必要があります。必要であればいつでも一般的な番号に戻すことができるのでlocalStorageが消去されても大きな問題はありませんが、Phonegapの外でこの変数を読み取る方法が見つかりません...

同じルーチン内の他のコードと同様に、getApplicationContext()を使用してPhonegapアクティビティを開始してください。これら2つのブロックの順序を逆にして、何らかの理由でemergencyIntentから変数を取得する必要があるのでしょうか?または、より洗練されたソリューションがありますか?

いつもどんなアドバイスもありがとうございます。

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

答えて

0

私はちょうどwindow.location.href = 'tel:' + localStorage.getItem( 'emergencyPhone');開始された活動のJS内から。理想的ではありませんが、機能します。

私はまた、実際のダイヤルを自動化する機能を追加したことがわかりました。私の元のcallIntentメソッドが働いたのと同じ方法ですが、これはあまりにも多くの偶発呼出を引き起こし、しかし、おそらく他の人に便利です。

関連する問題