tramp-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Enable adb port in tramp adb


From: Michael Albinus
Subject: Re: Enable adb port in tramp adb
Date: Mon, 03 Nov 2014 09:55:38 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

Ashi <address@hidden> writes:

> Hi, Michael,

Hi Zhongwei,

> adb has 2 kinds of connection:
>
> - connected by USB, and adb devices will list a serial No., like in
> your case:
> 3335F075A13600EC device
>
> - connected by TCPIP, and adb devices will list IP address + PORT,
> e.g.:
> 10.164.2.162:5555 device
>
> you can switch to this by running "adb tcpip" if your device have a
> network interface, and then run "adb connect IP_ADDRESS" to connect to
> your device. There are more details in this page:
> http://developer.android.com/tools/help/adb.html#wireless
>
> So in your case, there is no need to add port number in the path. It
> should be "/adb:3335F075A13600EC:". The port number is only needed
> when connected by TCPIP.

I'm not an adb expert, as you might have discovered already. However,
reading all the instructions I would conclude:

- If adb is in usb mode, port numbers are not applicable. Shouldn't we
  discover this? Or should we switch to tcpip mode, whenever a port
  number is specified in the remote file name?

- If adb is in tcpip mode, a user *must* specify the port number
  according to your patch. Otherwise, the ip address wouldn't be
  detected by `tramp-adb-parse-device-names', because "adb devices"
  lists all devices with their respective port number. This sounds
  unfortune.

> diff --git a/test/tramp-tests.el b/test/tramp-tests.el
> index 864a43d..5ea0291 100644
> --- a/test/tramp-tests.el
> +++ b/test/tramp-tests.el
> @@ -1165,7 +1165,8 @@ This tests also `make-symbolic-link', `file-truename' 
> and `add-name-to-file'."
>         (skip-unless (set-file-times tmp-name1 '(0 1)))
>         ;; Dumb remote shells without perl(1) or stat(1) are not
>         ;; able to return the date correctly.  They say "don't know".
> -       (unless (equal (nth 5 (file-attributes tmp-name1)) '(0 0))
> +       (unless (or (equal (nth 5 (file-attributes tmp-name1)) '(0 0))
> +                      (equal (nth 4 (file-attributes tmp-name1)) '(0 0)))
>           (should (equal (nth 5 (file-attributes tmp-name1)) '(0 1)))
>           (write-region "bla" nil tmp-name2)
>           (should (file-exists-p tmp-name2))

I'm thinking about whether this is the best solution. In fact, this
masks only a problem, I believe.

You have said, that after applying

(set-file-times 
"/adb:10.164.2.12#5555:data/local/tramp_testdir/tramp-test12242_Hq" '(0 1))

you get

(file-attributes 
"/adb:10.164.2.12#5555:data/local/tramp_testdir/tramp-test12242_Hq")

=> (nil 1 0 0 (0 0) (-948638 13211) (0 0) 3 "-rw-rw-rw-" t 1 (-1 . 6))

which is obviously wrong. And on adb shell level, there is

-rw-rw-rw- root root 3 -001-12-01 00:00 tramp-test12242_Hq

Shouldn't it be better that we investigate, why `set-file-times' behaves that
strange? It doesn't happen, when I test with my Nexus S (running Android 4.1).

> Best regards,
> Zhongwei

Best regards, Michael.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]