首页 > 解决方案 > 如何在 Android/IOS 上将 TIdTCPClient 连接到 TIdTCPServer?

问题描述

IndyTIdTCPClient错误:socket error # 113 no rout to host从 Android 连接到 PC 时。

你好,我知道我最近问了很多关于 Indy Components 的问题,但是我在尝试连接我的 PC Windows 10 上的TIdTCPClientAndroid 设备时遇到了一个真正的问题。TIdTCPServer

我必须补充一点,我在LAN网络上使用WIFI,而且所有设备都有WIFI访问。

另外,我不得不提到我的 windows 10 FireWallOff,所以它不能以某种方式被防火墙。此外,我的 windows 10 平台上没有激活的防病毒软件,甚至没有MCAfee

这是我尝试从我的 Android 连接到 PC 时遇到的错误

socket error # 113 no route to host

注意:当我在同一台机器上使用双方时,我可以TIdTCPClient连接。TIdTCPServer

连接模板:

这是我的问题:

1- 从PC1连接到PC2 =“失败”。

2- 从PC1连接到PC1 =“成功”。

3- 从PC1连接到Android/IOS =“失败”。

4- 从Android/IOS连接到PC1 =“失败”。

失败时,我收到上面的错误。

XML更新:

<?xml version="1.0" encoding="utf-8"?>
<!-- BEGIN_INCLUDE(manifest) -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.embarcadero.watcher"
        android:versionCode="1"
        android:versionName="1.0.0"
        android:installLocation="auto">

    <!-- This is the platform API where NativeActivity was introduced. -->
    <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="14" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_CALENDAR" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <uses-feature android:glEsVersion="0x00020000" android:required="True"/>
    <application android:persistent="False" 
        android:restoreAnyVersion="False" 
        android:label="watcher" 
        android:debuggable="True" 
        android:largeHeap="False"
        android:icon="@drawable/ic_launcher"
        android:theme="@style/AppTheme"
        android:hardwareAccelerated="true">



        <!-- Our activity is a subclass of the built-in NativeActivity framework class.
             This will take care of integrating with our NDK code. -->
        <activity android:name="com.embarcadero.firemonkey.FMXNativeActivity"
                android:label="watcher"
                android:configChanges="orientation|keyboard|keyboardHidden|screenSize"
                android:launchMode="singleTask">
            <!-- Tell NativeActivity the name of our .so -->
            <meta-data android:name="android.app.lib_name"
                android:value="watcher" />
            <intent-filter>  
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter> 
        </activity>

        <receiver android:name="com.embarcadero.rtl.notifications.NotificationAlarm" />

    </application>
</manifest>
<!-- END_INCLUDE(manifest) -->

标签: androiddelphifiremonkeyc++builderindy

解决方案


好像是我的WIFI路由器的问题,因为当我换到另一个路由器时它工作正常,无论如何感谢您的帮助


推荐阅读