Форум программистов, компьютерный форум CyberForum.ru

Какую архитектуру предпочтительнее выбрать? - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Получить Activity другого приложения http://www.cyberforum.ru/android-dev/thread1130308.html
Подскажите пожалуйста, могу ли я из своего приложения получить Activity другого? Или же как можно из своего приложения запустить Activity другого, чтобы можно было с ним взаимодействовать?
Android Android посредством Delphi (XE5) Здравствуйте, уважаемые форумчане. Занялся наконец разработкой дипломного проекта и неожиданно работа остановилась. Очень надеюсь, что поделитесь необходимой информацией со мной. В общем суть такова. Тема диплома звучит как "Разработка комплекса демонстрационных программ под ОС Android" - соответственно нужны какие-нибудь довольно простенькие Open-Source приложения (может быть калькулятор,... http://www.cyberforum.ru/android-dev/thread1130242.html
Android Посоветуйте алгоритм визуализации графов
Немного не по теме андроида (извините), но желательно что-бы отвечающие думали на яве(как я сейчас), а не направляли меня читать статьи по теме на питоне/VBA/Perl/Prolog... Даже с теорией подобного не встречался... Давно мечтаю, а сейчас захотел попробовать нарисовать... Есть таблица связанных элеметов. Есть примерные коефициенты связей ("близость"). Хочу получить (статичную) картинку вроде...
Подключиться к сервису Android
В Activity запускается сервис (работает в фоне), который обновляет ProgressBar, закрыв активность кнопкой Back и вернувшись снова, progressBar не обновляется, но сервис продолжает работать. Как можно подключиться к сервису и получить прогресс? Пытаюсь сделать простой пример, пока выводящий просто значения в TextView. Но при закрытии активности и возврате в неё, данные в textView не...
Android Drawer Layout http://www.cyberforum.ru/android-dev/thread1129645.html
Имеется Drawer Layout со списком меню. Каждое меню кликабельно и меняет Fragment-ы. При нажатии на пункт списка выполняется метод: private void selectItem(int position) { mDrawerList.setItemChecked(position, true); mDrawerLayout.closeDrawer(mDrawerList); FragmentManager fm = getFragmentManager(); switch(position) {
Android Запрос по SOAP Как взаимодействовать с Веб сервисами ../ws?wsdl Exlipce подробнее

Показать сообщение отдельно
Nachinka
11 / 11 / 0
Регистрация: 19.02.2014
Сообщений: 95
27.03.2014, 15:35  [ТС]     Какую архитектуру предпочтительнее выбрать?
Спасибо!

Вот такой кодец пробую:

Основной код(Активити):

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import java.util.ArrayList;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
 
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class MainActivity extends Activity implements OnClickListener {
 
    Button login;
    EditText loginText;
    EditText passText;
    String TAG = "TAG";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        loginText = (EditText) findViewById(R.id.TextLogin);
        passText = (EditText) findViewById(R.id.TextPass);
        login = (Button) findViewById(R.id.buttonLog);
        login.setOnClickListener(this);
    }
 
    @Override
    public void onClick(View v) {
        if (loginText.getText().toString().matches("")
                || passText.getText().toString().matches("")) {
            Toast.makeText(MainActivity.this, "Login it's false!",
                    Toast.LENGTH_SHORT).show();
            return;
        } else {
            Toast.makeText(MainActivity.this, "Login it's try",
                    Toast.LENGTH_SHORT).show();
            new MyTask(loginText.getText().toString(), passText.getText()
                    .toString()).execute();
        }
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
}

Код таска:


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
 
import android.os.AsyncTask;
import android.util.Log;
 
class MyTask extends AsyncTask<Void, Void, Void> {
 
    private String stringLog;
    private String stringPass;
    String TAG = "TAG";
 
    MyTask(String stringLog, String stringPass) {
        this.stringLog = stringLog;
        this.stringPass = stringPass;
    }
 
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        Log.d(TAG, "Begin.");
    }
 
    @Override
    protected Void doInBackground(Void... params) {
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://onlyt.ru/index.php");//Адрес сайта, на денвере
 
        try {
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
            nameValuePairs.add(new BasicNameValuePair("username", stringLog));
            nameValuePairs.add(new BasicNameValuePair("password", stringPass));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
 
            Log.d(TAG, "Execute HTTP Post Request");
            HttpResponse response = httpclient.execute(httppost);
            String str = inputStreamToString(response.getEntity().getContent())
                    .toString();
            Log.d(TAG, str);
 
            if (str.toString().equalsIgnoreCase("true")) {
                Log.d(TAG, "TRUE");
            } else {
                Log.d(TAG, "FALSE");
            }
 
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }
 
    private StringBuilder inputStreamToString(InputStream is) {
        String line = "";
        StringBuilder total = new StringBuilder();
        BufferedReader rd = new BufferedReader(new InputStreamReader(is));
        try {
            while ((line = rd.readLine()) != null) {
                total.append(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return total;
    }
 
    @Override
    protected void onPostExecute(Void result) {
        super.onPostExecute(result);
        Log.d(TAG, "End.");
    }
}

Ну и простенький обработчик:
PHP
1
2
3
4
5
6
7
8
9
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if($username=='user' && $password == '12345'){
echo "true";
}else{
echo "false";
}
?>
Обработчик поднят на денвере.

Логи выдают вот это:

Bash
1
2
3
03-27 11:35:05.116: D/TAG(778): Begin.
03-27 11:35:05.136: D/TAG(778): Execute HTTP Post Request
03-27 11:35:05.996: D/TAG(778): End.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru