我想制作简单的Android应用程序,其中我只有textview和一个按钮。单击该按钮时,将在PC上广播和接收textview中的字符串。我是Android编程和网络编程的新手。 1.请建议在PC中使用什么工具。 2.实现这一目标的一些简单步骤。 3.一些健康的教程,以便更好地理解事物。
对不起,如果我听起来很愚蠢:P 提前谢谢。
答案 0 :(得分:0)
欢迎使用StackOverflow!
听起来你想首先进入编程Android
的世界。那很好,但你应该从某个地方开始。我见过的最好的系列教程是The New Boston。视频非常容易理解,系列由200个视频组成。它涵盖了从下载和安装Eclipse
(这是一个可用于开发Android
应用程序的工具)到一些非常先进的概念的所有内容。因此,如果您有基本的了解,您可以选择要观看的视频,如果您想要完整的速成课程,只需观看它们即可。它还有大约3000种其他所有编程语言的视频。例如,如果您还不知道,则需要Java
。
在P.C.如果您没有设置可用的实时服务器,我建议您通过此链接XAMPP下载XAMPP
。它允许您在自己的计算机上创建许多东西,所有这些都是免费的。例如带有phpmyadmin的SQL
数据库和许多其他东西。总而言之,如果您在新波士顿观看200个视频中的一些视频,您将更好地了解您需要做些什么来实现您的目标。您还将更好地了解将来要具体询问的内容。希望这有帮助,如果您还需要其他任何东西,请询问
答案 1 :(得分:0)
嗯,我不确定这是不是最好的方式,但仍然是一种方式,你可以使用SMB用于android,而对于PC只是一个普通的Java程序,所以:
1:for PC you could use Java (since you use Java as a topic i supose that you know how to do a single program with this programming language
作为实现数字1的建议,您可以执行一个程序,每隔3-5秒不断检查一个空文件是否有数据或仍然为空,如果有数据然后显示带有数据的Dialog,showMessageDialog会做这份工作。
2:for android use what i said first, with that you could read or write a File on the PC from your android device, of course if both the PC and android device are in the same network
此时,只需在java程序检查的PC上的文件中编写TextView或EditText的String,让我知道这是否对您有所帮助,或者您想要更具体的细节,但我想你可以做你想做的。对不起我的英语,还在学习它:))
答案 2 :(得分:0)
听起来像套接字会对你想做的事情有好处。基本上,你需要在PC上运行服务器脚本/程序,并且android程序可以发送连接请求然后是一个包含字符串的数据包。
您需要在服务器上创建一个类似这样的ServerSocket
,并让它在您选择的端口上进行监听。
ServerSocket serverSocket = null;
int port = 9876;
try {
serverSocket = new ServerSocket(port);
} catch ( Exception e ) {
System.out.printf("Could not listen on port: %d", port );
System.exit(-1);
}
通常会使用新线程来接受这样的连接。
new Thread(new ServerThread(serverSocket.accept())).start();
run()
的{{1}}方法可以像这个一样简单
ServerThread
您可以在客户端(在Android设备上的情况下)使用这样的代码创建套接字。 (注意android不允许你在主线程中执行此操作,因此您必须在另一个线程中创建连接。
try {
Scanner socketIn = new Scanner(this.clientSocket.getInputStream());
PrintWriter socketOut = new
PrintWriter(this.clientSocket.getOutputStream(), true);
while(socketIn.hasNext() {
System.out.println(socketIn.next());
}
} catch (Exception e) {
}
由于您只是在wifi上执行此操作,而不是public void sendRequest(final String message) {
Log.d("test", "log");
new Thread() {
@Override
public void run() {
try {
Socket socket = new Socket(InetAddress.getByName(HOST), PORT);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
out.println(message);
} catch (Exception e) {
Log.d("Exception in thread", e.getStackTrace()+"");
}
}
}.start();
}
,因此您只需输入PC的本地IP地址即可。此外,如果您一直在计划这项工作,而不仅仅是学习和练习,最好在您的网络上使用静态本地IP设置PC。在那里有很多关于在不同操作系统上执行此操作的教程。
幸运的是,java中的套接字编程非常简单。您可以使用InetAddress.getByName(HOST)
和Scanner
来读取和写入套接字。
请注意,我没有测试过上面的代码,但原理是合理的。
以下是一些包含一些信息的网站。
编辑。我只能发布两个链接,因为我的代表很低。