@john_konstantin_007

Как найти пароль от приложения в коде Android Studio?

нужно запустить этот проект. https://github.com/Nsity/schooldiary
запустить смог но там нету кнопки регистрации, только вход, где достать данные для входа?
loginActivity
package com.example.nsity.schooldiary.navigation.login;
 
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
 
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
 
import com.example.nsity.schooldiary.R;
import com.example.nsity.schooldiary.navigation.MainActivity;
import com.example.nsity.schooldiary.system.CommonFunctions;
import com.example.nsity.schooldiary.system.SyncManager;
import com.example.nsity.schooldiary.system.gcm.GCMIntentService;
import com.example.nsity.schooldiary.system.gcm.ServiceRegister;
import com.example.nsity.schooldiary.system.network.CallBack;
import com.example.nsity.schooldiary.system.network.Server;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GoogleApiAvailability;
 
import javax.crypto.spec.GCMParameterSpec;
 
public class LoginActivity extends AppCompatActivity {
 
    private EditText mLoginView;
    private EditText mPasswordView;
    private View mProgressView;
    private View mLoginFormView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
 
        mLoginView = (EditText) findViewById(R.id.login);
        mPasswordView = (EditText) findViewById(R.id.password);
 
        Button mSignInButton = (Button) findViewById(R.id.sign_in_button);
        mSignInButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                attemptLogin();
            }
        });
 
 
        mLoginFormView = findViewById(R.id.login_form);
        mProgressView = findViewById(R.id.login_progress);
    }
 
    private void attemptLogin() {
        if (!Server.isOnline(this)) {
            Toast.makeText(this, getString(R.string.internet_problem), Toast.LENGTH_SHORT).show();
            return;
        }
 
        try {
            InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
            imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
        } catch (Exception e) {
            e.printStackTrace();
        }
 
        mLoginView.setError(null);
        mPasswordView.setError(null);
 
        String login = mLoginView.getText().toString();
        String password = mPasswordView.getText().toString();
 
        boolean cancel = false;
        View focusView = null;
 
        if (TextUtils.isEmpty(password)) {
            mPasswordView.setError(getString(R.string.error_field_required));
            focusView = mPasswordView;
            cancel = true;
        }
 
        if (TextUtils.isEmpty(login)) {
            mLoginView.setError(getString(R.string.error_field_required));
            focusView = mLoginView;
            cancel = true;
        }
 
        if (cancel) {
            focusView.requestFocus();
        } else {
            CommonFunctions.showProgress(true, this, mLoginFormView, mProgressView);
            UserManager.login(getApplicationContext(), login, password, new CallBack() {
                @Override
                public void onSuccess() {
                    CommonFunctions.showProgress(false, getApplicationContext(), mLoginFormView, mProgressView);
                    sync();
                }
 
                @Override
                public void onFail(String message) {
                    CommonFunctions.showProgress(false, getApplicationContext(), mLoginFormView, mProgressView);
                    Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
                }
            });
        }
    }
 
    private void sync() {
        final ProgressDialog mProgressDialog = new ProgressDialog(this);
        mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
        mProgressDialog.setMessage(getString(R.string.action_load));
        mProgressDialog.setProgressNumberFormat(null);
        mProgressDialog.setCancelable(false);
        mProgressDialog.setIndeterminate(false);
        mProgressDialog.show();
 
        SyncManager.sync(getApplicationContext(), new CallBack() {
            @Override
            public void onSuccess() {
                if (ServiceRegister.checkPlayServices(getApplicationContext())) {
                    Intent intent = new Intent(getApplicationContext(), GCMIntentService.class);
                    intent.putExtra(GCMIntentService.KEY, GCMIntentService.REGISTER);
                    startService(intent);
                }
                mProgressDialog.dismiss();
                startActivity(new Intent(LoginActivity.this, MainActivity.class));
                finish();
                overridePendingTransition(0, 0);
            }
 
            @Override
            public void onFail(String message) {
                Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
                mProgressDialog.dismiss();
            }
        });
    }
 
 
 
}


UserManager

package com.example.nsity.schooldiary.navigation.login;
 
import android.content.Context;
import android.content.Intent;
 
import com.example.nsity.schooldiary.R;
import com.example.nsity.schooldiary.system.gcm.GCMIntentService;
import com.example.nsity.schooldiary.system.gcm.ServiceRegister;
import com.example.nsity.schooldiary.system.network.ErrorTracker;
import com.example.nsity.schooldiary.system.Preferences;
import com.example.nsity.schooldiary.system.database.ADBWorker;
import com.example.nsity.schooldiary.system.network.AsyncHttpResponse;
import com.example.nsity.schooldiary.system.network.CallBack;
import com.example.nsity.schooldiary.system.network.ResponseObject;
import com.google.android.gcm.GCMRegistrar;
 
import org.json.JSONException;
import org.json.JSONObject;
 
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
 
public class UserManager {
 
    public static void login(final Context context, final String login, final String password, final CallBack callBack) {
        String encodedLogin, encodedPassword;
        try {
            encodedLogin = URLEncoder.encode(login, "utf-8");
            encodedPassword = URLEncoder.encode(password, "utf-8");
        } catch (UnsupportedEncodingException e) {
            callBack.onFail(context.getString(R.string.error_encode));
            return;
        }
 
        String url = context.getString(R.string.base_url) +
                context.getString(R.string.call_method_api_login) + encodedLogin + "/" + encodedPassword;
 
        new AsyncHttpResponse(context, url, null, AsyncHttpResponse.CALL_JSON_HTTP_RESPONSE, new CallBack<ResponseObject>(){
            @Override
            public void onSuccess(ResponseObject object){
                if (!(object.getResponse() instanceof JSONObject)) {
                    callBack.onFail(context.getString(R.string.error_response));
                    return;
                }
 
                try {
                    JSONObject response = (JSONObject)object.getResponse();
 
                    Preferences.set(Preferences.PUPILID, response.getString(context.getString(R.string.id)), context);
                    Preferences.set(Preferences.CLASSID, response.getString(context.getString(R.string.class_id)), context);
                    Preferences.set(Preferences.FIO, response.getString(context.getString(R.string.fio)), context);
                    Preferences.set(Preferences.CLASSNAME, response.getString(context.getString(R.string.class_name)), context);
 
                } catch (JSONException e) {
                    callBack.onFail(context.getString(R.string.error_response));
                    return;
                }
                callBack.onSuccess();
            }
 
            @Override
            public void onFailure(ResponseObject object){
                callBack.onFail(ErrorTracker.getErrorDescription(context, object.getResponse().toString()));
            }
        });
    }
 
 
    public static void logoff(Context context) {
        ADBWorker.deleteAllTables(context);//remove all tables in database
        if (ServiceRegister.checkPlayServices(context)) {
            Intent intent = new Intent(context, GCMIntentService.class);
            intent.putExtra(GCMIntentService.KEY, GCMIntentService.UNREGISTER);
            context.startService(intent);
        }
    }
}
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ответы на вопрос 1
Andrew_Pinkerton
@Andrew_Pinkerton
Там этих данных нет.
Предполагается что их надо получить у того кто администрирует API.

https://github.com/Nsity/schooldiary/blob/43ad705d...
Судя по этим строкам, оно (API) не работает. Один хост явно локальный, второй недоступен.
Message: mysqli::real_connect(): (HY000/1045): 
Access denied for user 'bb15d7452089ef'@'168.62.48.92' 
(using password: YES)

<!--<string name="base_url">http://schooldiary.azurewebsites.net/</string>-->
<string name="base_url">http://192.168.0.19:8888/schooldiaryapi/</string>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Почта Банк Москва
от 207 000 до 240 000 ₽
S2 | CRM Тольятти
от 120 000 до 200 000 ₽
Oblako Studio Санкт-Петербург
от 120 000 до 240 000 ₽