2012-05-09 4 views
1

私は現在、登録ユーザーとログインして、彼の体重、彼のcollesterolレベルなど、トラフのウェブを投稿することができますアンドロイドアプリで作業していますサービスはksoapを使用していますが、私はkSOAPのようなWebサービスにログオンしているユーザに値を導入する方法を知らない。私はコードを持っていませんが、私はそれをやろうとしています。なぜなら、アンドロイドでは私がまだ赤ちゃんの措置を取ると言うことができるからです。情報が投稿されるウェブサイトは既に作成されていますが、ユーザーをどのようにログインさせておくかを知る必要があります。その場合、自分の番号を入れ、適切なユーザーに適切な値をサイトDBに渡します。AndroidでAndroidをログオンし続けるAndroidアプリ

+0

私たちは、あなたが石鹸で呼び出しされるサイトに関するより多くの情報が必要。 SOAPは認証をサポートしているので、ログイン/パスワードをヘッダに追加することができます。後ろのウェブサイトはあなたの資格情報を確認することができます – Alex

+0

はい、それを行うには、それを行うWebサービスが必要です、私はsharedpreferencesを使用すると言う人々が他の投稿を見て、それは良いアイデアのようだが、どのようにこのような状況でそれらを使用するように私は値を送信するときに、それは共有環境設定の値を請求し、適切な場所に情報を投稿します。 – Soulforth

答えて

2

boolean variable in Shared Preferencelogged inだからあなたはいつでもあなたはその値を確認する必要があるデータを送信したい場合boolean variable。それが真であれば、それ以外の場合はログインページにリダイレクトすることができます。

ユーザがログアウトしたときに、共有環境設定でその変数にfalseを設定するか、共有環境設定を消去する必要があります。

public class PreferenceData 
{ 
    static final String PREF_USER_ID = "user_logged_in"; 

    public static SharedPreferences getSharedPreferences(Context ctx) 
    { 
     return PreferenceManager.getDefaultSharedPreferences(ctx); 
    } 

    public static void setUserLoggedIn(Context ctx, boolean userLoggedIn) 
    { 
     Editor editor = getSharedPreferences(ctx).edit(); 
     editor.putBoolean(PREF_USER_ID, userLoggedIn); 
     editor.commit(); 
    } 

    public static boolean getUserLoggedIn(Context ctx) 
    { 
     return getSharedPreferences(ctx).putBoolean(PREF_USER_ID, false); 
    } 
} 
+0

今度はおかげでChiragの大きな助けになりました。将来私はこれに問題がある場合あなたの電子メールを与えることができますか? – Soulforth

+0

削除できます – Soulforth

0

よく、タイムスタンプ付きのトークンをsqlite dbまたはフラッシュメモリに保存して、要求のパラメータとして送信することができます。ログイントークンが存在するかどうかをチェックすると、タイムアウトするかどうかチェックすることができます。タイムアウトしたい場合はタイムスタンプをチェックしてください - このトークンをクリアするログアウト機能を作成してください。

+0

私はインターンシップをしていて、何かシンプルなものを求めています。私はクライアントサイドでトラフするので、私は自分の側でdbを使用したくありません。 – Soulforth

関連する問題