Вниз  Android-программирование (1-ые посты)
- 17.05.2013 / 23:06
mrEDitor
  Пользователь

mrEDitor 
Сейчас: Offline
boNNdaR, Salat, спасибо. А то я по статьям в инете использовал еще и компас-сенсор и слегка запутался))

Изменено mrEDitor (17.05 / 23:07) (всего 1 раз)
- 20.05.2013 / 11:32
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
Задача: получить вью того что сейчас на экране (некого прилождения).
Что я думал:
-получаем список процессов
-достаем как то до активити/фрагмента
-достает текущий вью
1 пункт в принципе несложно (пару страниц назад было похожее)
3 пункт вообщшем то тоже ничего сложного
А вот со вторым пока у меня любовь не сложилась. Нашел такую штуку
  1. public Activity getActivity(String id){    
  2.         LocalActivityManager lam =new LocalActivityManager(activity, true);
  3.         return lam.getActivity(id);
  4.     }
Но она для мультиактивитный аппов. Тоесть достать до чужого активити не даст. Есть идеи? Вариант "нереально потому что нереально" не катит, так не интересно)))
- 20.05.2013 / 13:55
Freddy
  Пользователь

Freddy 
Сейчас: Offline
Salat-Cx65, Андроида у меня нет, пробуй: http://qtcstation.com/2011/01/...-running-activities/
- 20.05.2013 / 14:30
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
Freddy, спс, я уже сам тут диспетчер задач почти слепил, но все не то(( Список процессов/активити, можно убить/запустить, получить иконку и прочее и прочее. Класс. Но не то блин((
- 20.05.2013 / 19:44
Naik
  Пользователь

Naik 
Сейчас: Offline
Salat-Cx65, по-моему это невозможно, разве что модификацией прошивки. Или с root-правами.

Изменено Naik (20.05 / 19:45) (всего 1 раз)
- 20.05.2013 / 19:58
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
Ну как один старый джедай говорил Невозможное возможно. Мне то всего то надо доставать то что в текстовых полях юзер пишет. Через Клипбоард достал, но оно полуавтоматическое выходит. Ну ладно, есть еще куда копать
- 20.05.2013 / 22:15
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Salat-Cx65, пиши свою клавиатуру и отслеживай сколько влезет :)
__________________
 let live
- 20.05.2013 / 22:58
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
Вот кстати клавиатура. Как она вставляет в чужой вью строку? Ану, светлые головы, подскажите
- 20.05.2013 / 23:41
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Salat-Cx65, не думаю, что там всё настолько плохо, что приходится придумывать хаки для вставки символов. Наверняка есть какой-то менеджер или провайдер, который это делает.
android.inputmethodservice

Взгляни на %android-sdk%\samples\android-17\SoftKeyboard
__________________
 let live

Изменено aNNiMON (20.05 / 23:46) (всего 2 раза)
- 22.05.2013 / 04:35
dzebb
  Пользователь

dzebb 
Сейчас: Offline
Привіт шкода не по темі. хто знає
переклад ру в java android? :-D

  #!/bin/sh -
"exec" "python" "-O" "$0" "$@"

__doc__ = """Tiny HTTP Proxy.

This module implements GET, HEAD, POST, PUT and DELETE methods
on BaseHTTPServer, and behaves as an HTTP proxy. The CONNECT
method is also implemented experimentally, but has not been
tested yet.

Any help will be greatly appreciated. SUZUKI Hisao
"""

__version__ = "0.2.1"

import BaseHTTPServer, select, socket, SocketServer, urlparse

class ProxyHandler (BaseHTTPServer.BaseHTTPRequestHandler):
     __base = BaseHTTPServer.BaseHTTPRequestHandler
     __base_handle = __base.handle

     server_version = "TinyHTTPProxy/" + __version__
     rbufsize = 0 # self.rfile Be unbuffered

     def handle(self):
         (ip, port) = self.client_address
         if hasattr(self, 'allowed_clients') and ip not in self.allowed_clients:
           self.raw_requestline = self.rfile.readline()
           if self.parse_request(): self.send_error(403)
         else:
           self.__base_handle()

     def _connect_to(self, netloc, soc):
         i = netloc.find(':')
         if i >= 0:
           host_port = netloc[:i], int(netloc[i+1:])
         else:
           host_port = netloc, 80
         print "\t" "connect to %s:%d" % host_port
         try: soc.connect(host_port)
         except socket.error, arg:
           try: msg = arg[1]
           except: msg = arg
           self.send_error(404, msg)
           return 0
         return 1

     def do_CONNECT(self):
         soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         try:
           if self._connect_to(self.path, soc):
           self.log_request(200)
           self.wfile.write(self.protocol_version +
           " 200 Connection established\r\n")
           self.wfile.write("Proxy-agent: %s\r\n" % self.version_string())
           self.wfile.write("\r\n")
           self._read_write(soc, 300)
         finally:
           print "\t" "bye"
           soc.close()
           self.connection.close()

     def do_GET(self):
         (scm, netloc, path, params, query, fragment) = urlparse.urlparse(
           self.path, 'http')
         if scm != 'http' or fragment or not netloc:
           self.send_error(400, "bad url %s" % self.path)
           return
         soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         try:
           if self._connect_to(netloc, soc):
           self.log_request()
           soc.send("%s %s %s\r\n" % (
           self.command,
           urlparse.urlunparse(('', '', path, params, query, '')),
           self.request_version))
           self.headers['Connection'] = 'close'
           del self.headers['Proxy-Connection']
           for key_val in self.headers.items():
           soc.send("%s: %s\r\n" % key_val)
           soc.send("\r\n")
           self._read_write(soc)
         finally:
           print "\t" "bye"
           soc.close()
           self.connection.close()

     def _read_write(self, soc, max_idling=20):
         iw = [self.connection, soc]
         ow = []
         count = 0
         while 1:
           count += 1
           (ins, _, exs) = select.select(iw, ow, iw, 3)
           if exs: break
           if ins:
           for i in ins:
           if i is soc:
           out = self.connection
           else:
           out = soc
           data = i.recv(8192)
           if data:
           out.send(data)
           count = 0
           else:
           print "\t" "idle", count
           if count == max_idling: break

     do_HEAD = do_GET
     do_POST = do_GET
     do_PUT = do_GET
     do_DELETE=do_GET

class ThreadingHTTPServer (SocketServer.ThreadingMixIn,
           BaseHTTPServer.HTTPServer): pass

if __name__ == '__main__':
     from sys import argv
     if argv[1:] and argv[1] in ('-h', '--help'):
         print argv[0], "[port [allowed_client_name ...]]"
     else:
         if argv[2:]:
           allowed = []
           for name in argv[2:]:
           client = socket.gethostbyname(name)
           allowed.append(client)
           print "Accept: %s (%s)" % (client, name)
           ProxyHandler.allowed_clients = allowed
           del argv[2:]
         else:
           print "Any clients will be served..."
         BaseHTTPServer.test(ProxyHandler, ThreadingHTTPServer)

Изменено dzebb (22.05 / 04:37) (всего 1 раз)
Наверх  Всего сообщений: 4453
Фильтровать сообщения
Поиск по теме
Файлы топика (184)