2011-10-27 5 views
3

Flex 4.5モバイルプロジェクトでSharedObjectを使用しようとしています。 私が使用しているSDKは4.5.1、AIRバージョンは2.6.0です。私は自分のアプリケーションのためのローカルストアのユーザーの資格情報コードのこの部分を使用しようとしているFlex 4.5 iOSモバイルプロジェクト:SharedObjectの問題

その後
var so:SharedObject = SharedObject.getLocal("cred"); 
so.data.user = txtUser.text; 
so.data.password = txtPass.text; 
so.data.rememberMe = isLoginRemembered.selected; 
var result:String = so.flush(); 

、ときに、アプリケーションのロード再び、 私は、私の以前に保存されたSharedObjectの資格情報を使用したいのですがユーザーは毎回自分の資格情報を入力する必要はありません。

var so:SharedObject = SharedObject.getLocal("cred"); 
txtUser.text = so.data.user; 
txtPass.text = so.data.password; 
isLoginRemembered.selected = so.data.rememberMe; 

しかし、これは動作するようには思えない、ユーザー&パスワードが保存されていないため、ヌルでした。 私のファイルシステム(Mac OSX)でcred.solファイルを探しても、私はファイルを見つけることができません! 'result'文字列が「flushed」と表示されている間、このすべてが表示されます。

私はMacでこのアプリケーションを開発しており、iOSに展開したいと考えています。

提案がありますか?

+0

おそらくエミュレータでは動作しません。あなたは実際のデバイスで試しましたか? –

+0

私はまだ実際のデバイスでそれを試していません。 エミュレータまたは実際のデバイスであれば、エミュレータはすべてのデバイスの機能を模倣する必要があるとは限りません。エミュレータは何をするのでしょうか? 多分、それから私を啓発してください。 – eMx

答えて

5

私はこの問題を解決しました。

私はFlash Builder 4.5を使用してこのアプリケーションを開発しており、iPhone4用にデバッグ/実行設定を行っています。
実行/デバッグ設定を指定するときは、[各起動時にアプリケーションデータをクリアする]チェックボックスをオンにすることができます。このチェックボックスは、各アプリケーションの起動時にSharedObjectをクリアするため、UNCHECKEDにする必要があります。

Flash Builder 4.5でこの設定画面にアクセスするには、実行/デバッグボタンの横にある小さな矢印をクリックし、[実行/デバッグ設定]をクリックします。指定した設定に移動し、チェックボックスをオフにします。

Voila!あなたのiOS SharedObject awesomenessをお楽しみください!

+1

今後の検索ユーザーにはこれを正しい答えとしてください。 – JeffryHouser

+0

@ eMx。あなたは素晴らしい仕事をしました。この問題は私の2時間を浪費してしまいます。そして、あなたがansで定義するように解決します。 –

0

まず、パスワードを保存する場合は暗号化を使用する必要があります。あなたのLSOの問題についてはわかりませんが、Local Encrypted Storeが答えになると思います.iOSとAIR 3.0でサポートされていると思います。暗号化されたSQL Liteデータベースを使用することもできます。これはテレビ以外のすべてでサポートされているマニュアルによるとhttp://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/data/EncryptedLocalStore.html

EncryptedLocalStore not supported

EDIT:この答えは、その上のいくつかの情報を持っています。だから、すべてのモバイルがEncryptedLocalStoreを持っているはずですが、Air3に切り替える必要があります。

+0

まず第一にそれはうまくいくはずです:-) –

+0

あなたのアドバイスは検討する価値があります。これは質問に対する答えではありません。 iOS上で動作しない共有オブジェクトの根本的な問題には対処できません。 – JeffryHouser

+0

こんにちは@ジョナサン、この問題を調べる時間をとっていただきありがとうございます。 パスワードを保存するためにローカル暗号化ストアを使用する必要があることはわかっていますが、私は管理者権限なしで自分のコンピュータ上のクライアント用にこのアプリケーションを作っています。だから私はAIR 2.6に悩まされている。暗号化されたSQL Liteデータベースは、このようなわずかなデータを保存するための過度のようです。 – eMx

関連する問題