远程安卓盒子N1安装APP-远程查看机顶盒屏幕画面等

发布时间 2024-01-03 21:57:00作者: CarlZeng
title: 远程安卓盒子N1安装IPTV APP-远程查看机顶盒屏幕画面等
tags: [N1,Android,安卓,iptv,家宽,远程控制,机顶盒,frps,frpc,frp]
新版原文: https://www.carlzeng.top/search?q=远程安卓盒子N1安装APP-远程查看机顶盒屏幕画面等
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
date: 2023-12-12 12:25:00
categories: IPTV

N1RemoteControl

实测远程协助安卓电视盒子,远程控制机顶盒(远程控制安卓电视),远程协助给家人的机顶盒安装APP(包括删除、管理APP等),远程操作N1电视盒子

有什么用

远程控制机顶盒,给老人的智能安卓机顶盒(或者安卓电视)安装IPTV类APP

远程给家人的机顶盒安装APP,远程操作N1电视盒子

充当遥控器,实现遥控器的绝大多数功能

远程协助操作安卓电视盒子

怎么用

步骤

(前提是你已经可以配置了路由器的远程,我已经用frps和frpc远程穿透连接起来,再使用了NPM反代出路由器的WEB控制页面,这样一顿操作,后续实现会丝滑许多)

  1. 激活N1安卓电视盒子,开机,或者按机顶盒的遥控器

    1. 在路由器中找到安卓盒子(或者安卓电视)的IP地址
    2. 检测是否激活设备的办法,ping 盒子的IP,如果已经ping通,请跳过这步
  2. 设置远程FRP服务器(服务端)

    1. 具体参见文章:Docker搭建FRP内网穿透服务,如果已有frps服务器可用,请跳过这步
  3. 设置受控端机顶盒所在的路由器上的frpc客户端

    1. 具体参见文章:Docker搭建FRP内网穿透服务>设置应用4
  4. adb连接命令 adb connect 192.168.6.216:5555

    1. 检测是否connect就用: adb devices 看是否列出设备IP以及端口
  5. [可选]adb安装命令 adb -s 192.168.6.216:5555 install ***.apk

    实例安装perfect player(注意:如果apk文件和路径复杂的话用双引号包裹)

    adb -s 192.168.6.216:5555 install "~/Downloads/com.niklabs.pp_1.6.0.1-60105_minAPI16(arm64-v8a)(nodpi)_apkmirror.com.apk"

  6. 远程查看屏幕并控制 scrcpy --tcpip=192.168.6.216:5555

    1. 具体参见文章:安卓手机投屏至电脑, 电脑显示和控制安卓手机, 手机电脑同屏软件Scrcpy
    2. 控制的目标是用鼠标和键盘操作机顶盒或电视,鼠标点击打开APP,点击设置,键盘输入IPTV直播源
    3. [可选]其他任何可以用遥控器在本地操作的动作

相关内容

如果您对相关的 安卓 盒子 感兴趣,以下内容可能帮到您:

实现方法

现实问题

  1. 要解决机顶盒连接二楼旁路由器,而远程协助的手机连接的是一楼的主路由
  2. 如何知道悟空遥控是开放了什么端口?
    1. 这样打开才能正常扫描到机顶盒的

这个问题无解了,思路要换掉(无法使用悟空遥控的思路)

远程控制手机的原理一样,但难度更大一点,太多安全设置成为远程协助的障碍,无法有效帮助到家里的老人。

步骤/方法/曲折过程

[可选步骤]使用QtScrcpy, 来激活设备的步骤

  1. 在QtScrcpy中设置,无线192.168.6.216,端口5555,点击“无线连接”
    1. 左侧的列表中出现,比如:Phone-192.168.6.216:5555; 应该是有adb run 一个命令;具体是什么?
      1. adb run AdbProcessImpl::out:connected to 192.168.6.216:5555
      2. 其实就是对应adb命令:adb connect 192.168.6.216:5555
    2. 点击:安装sndcpy
    3. 点击:启动服务
  2. 在Terminal中输入scrcpy -e
    1. 之前的adb devices(显示列表是空的), 新增加的设备就是上一步连接好的设备(会显示IP:端口)

原来N1机顶盒(安卓)也可以使用scrcpy -e 来连接,从而进行远程控制;我说的是:从Mac电脑(其他的平台也一样)上远程控制机顶盒的页面,可以设置机顶盒的APP,这样避免老人需要使用遥控器来控制(进行复杂的操作,比如:配置DIYP的源地址,本身在遥控器上操控虚拟键盘按来按去就很费劲)

缺点/瑕疵

  1. 声音没有传输过来,不过没关系,又不是远程用来看电视的;话说回来,可以把这个N1做成服务,让用户可以远程连接来看IPTV和电影等等。

    1. 原来是因为盒子Adndroid的版本太旧问题

      [server] INFO: Device: [Phicomm] Phicomm p230 (Android 7.1.2)                                                       
      [server] WARN: Audio disabled: it is not supported before Android 11                                                
      INFO: Renderer: metal                                                                                               
      WARN: Demuxer 'audio': stream explicitly disabled by the device   
      
  2. 无法使用盒子遥控器上面的菜单按键,只能是左键单击

    1. 不碍事,也够用了;只是不能远程设置某个APP开机自动启动罢了

下一步 frp映射/穿透

下一步就是前提设置中的:frp映射出5555来,配置frpc客户端;也成为穿透

​ 面临在padavan中无法找到机顶盒的IP,不在WIFI里面里面(因为是使用网线连接的),如何找到N1盒子的IP?

​ 通过padavan的UI查询:网络信息 > 流量监控https://k2pzl.carlzeng.top:4443/Main_BWMon.asp

找到了服务器上frps的192.168.6.116:6006, frpc映射至192.168.123.189:5555

​ 到路由器上DHCP把机顶盒的IP绑定MAC,这样以后盒子的IP不会变frpc运行在路由器上面总能找到正确的盒子IP(定位准确)。

这样scrcpy -e
就会显示两个客户端了!
scrcpy -e
scrcpy 2.1.1 <https://github.com/Genymobile/scrcpy>
ERROR: Multiple (2) ADB devices over TCP/IP:
ERROR:     --> (tcpip)  192.168.6.116:6006              device  p230
ERROR:     --> (tcpip)  192.168.6.216:5555              device  p230
ERROR: Select a device via -s (--serial), -d (--select-usb) or -e (--select-tcpip)
ERROR: Server connection failed

#手动指定连接到那一个adb 5555 客户端(即便是被frp映射过的也一样)
scrcpy --tcpip=192.168.6.116:6006

下一步 scrcpy的远程控制

如何通过scrcpy的远程控制,给N1安卓电视盒子安装APP

理论上adb命令,可以轻松执行这个安装APP的目标(好像我之前写过方法:苹果电脑M1上唯一可用的安卓模拟器-CarlZeng

  1. 把要安装的APP,放在电脑本地的一个目录(假设~/Downloads)
  2. 用命令adb install /*.apk
  3. 具体过程:
- adb devices                                                                               
List of devices attached                                                                                            
192.168.6.116:6006      offline                                                                                     
192.168.6.216:5555      device  

#怎么手动选一个devices中的device?

- adb install /Users/carlzeng/Downloads/DIYP影音经典版.apk
adb: more than one device/emulator
Use the -s option BEFORE the command to specify the device, for example:
adb -s 192.168.232.2:5555 <command>

- adb -s 7f1c864e shell
#这样的话,可以获得这个Android安卓设备的shell执行权限
#这个参数的内容和scrcpy是一样的,只是指定参数的方式一点点不一样罢了

- adb -s 192.168.6.216:5555 install /Users/carlzeng/Downloads/DIYP影音经典版.apk
Performing Streamed Install
adb: failed to install /Users/carlzeng/Downloads/DIYP影音经典版.apk: Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install com.player.diyp2020 without first uninstalling.]

- adb -s 192.168.6.216:5555 install /Users/carlzeng/Downloads/Love\ TV\ 20231127/Love\ TV\  简约版.apk

这样就可以安装好安卓N1盒子上面的APP了

打开前面一步的scrcpy --tcpip=192.168.6.116:6006进行远程控制画面,进去设置一下DIYP的源(老人控制遥控很有难度的)

以后需要安装APP更新,换源等等,远程就能做到了,老人再也不用担心无法看电视。

祝你好运

[按需]删除盒子上APP

有两种方法:

  1. 可视的方案是打开scrcpy,设置里面,有应用的选项,点击进去,在点卸载即可。
  2. 命令的方式
    1. adb -s 192.168.6.216:5555 shell pm list packages
    2. 根据上一步的package名称使用 adb -s 192.168.6.216:5555 uninstall com.github.tvbox.osc.tk
      1. adb -s 192.168.6.216:5555 uninstall com.fongmi.android.tv

故障与解决

frp映射穿透过来的ssh服务,无法连接上去

ssh admin@192.168.6.116 -p 6008                                                     
Unable to negotiate with 192.168.6.116 port 6008: no matching key exchange method found. Their offer: diffie-hellman
-group14-sha1,diffie-hellman-group1-sha1,kexguess2@matt.ucc.asn.au  

修改了 ~/.ssh/config后

KexAlgorithms +diffie-hellman-group1-sha1                                                                         
Ciphers 3des-cbc

修改之后错误变成:

Unable to negotiate with 192.168.6.116 port 6008: no matching host key type found. Their offer: ssh-rsa,ssh-dss     

最后使用了解决办法:

ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa root@192.168.6.116 -p 6008

#K2P SSH默认密码admin

这个SSH错误的灵感来源:I get the error "no matching host key type found. Their offer: ssh-rsa" when trying to connect with SSH

K2P使用的SSH密码是默认的admin(和WEB页面登录的密码不一样),好危险的后门行为(建议默认关闭K2P设备的SSH服务)

adb shell 关机

adb -s 192.168.6.216:5555 shell

进入shell以后

关机:reboot -p

​ 关机以后无法使用网络唤醒了,小伙伴有没有办法?

重启:reboot

K2P原版与刷机Note

K2P原版,用来做WIFI中继,是最稳的。在K2P系统里面的功能名称是:无线拓展。换句话说:想要用K2P实现无线中继,就刷回原版:

K2P无线拓展

我用这个原版,死活无法顺畅抓包IPTV数据包,最后盯上了tcpdump命令 tcpdump -i any -w /tmp/iptv.cap。 也下载好了Wireshark,可是没法把/tmp下面的iptv.cap下载下来,找到办法(把文件挪到或mount到web的静态目录):mv /tmp/iptv.cap /www/luci-static/fonts/iptv.cap 可是mv: write error: No space left on device

mount --bind /tmp/iptv.cap /www/web-static.........

继续阅读

请点击访问最新版内容