首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python SL4A开发

Python SL4A开发
EN

Stack Overflow用户
提问于 2012-06-01 03:16:47
回答 1查看 5.2K关注 0票数 8

好吧--我感觉自己就像一个沮丧的笨蛋。我想在前面说明一下。

我正在尝试进行Python/Android设置,这样我就可以为Android开发Python应用程序了。我已经在我的安卓设备上安装了SL4A和Python解释器,并且可以在运行的手机上编写应用程序。

问题是我如何在我的PC上继续开发,并与我的Android设备交互。我已经解压了extras包,并将其放在$PYTHONPATH/site-packages/中。我已经将Ecplise与PyDev和Android包集成,并设置了AP_PORT和AP_HOST环境变量。

当我运行以下代码时:

代码语言:javascript
复制
import android
droid = android.Android()
droid.makeToast("Hello")

我在Eclipse中得到了包含"com.googlecode.android_scripting.rpc.RpcError:未知RPC的错误。“敬糟糕的魔术数字。

当我通过CLI进入Python并输入

代码语言:javascript
复制
import android

我得到了以下输出

代码语言:javascript
复制
com.googlecode.android_scripting.rpc.RpcError: Unknown RPC.

任何帮助或初学者教程都将非常感谢。

我知道我一定是做错了什么,因为我看到其他人被设置了,看起来相对容易。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-05 16:37:38

1.启动服务器

在设备上

首先,用USB连接你的设备。然后,为了进行远程调试,您需要在设备上启动一个服务器:

代码语言:javascript
复制
SL4A -> Interpreters -> Menu -> Start Server

私人的那个更可取。

然后,您可以在安卓通知区域中查找服务器的端口(使用SL4A r5,您可以在设置中指定固定端口)。

从PC

或者,您也可以使用特定端口(设置端口需要r5)通过adb从PC启动服务器:

代码语言:javascript
复制
$ adb shell am start -a com.googlecode.android_scripting.action.LAUNCH_SERVER \
  -n com.googlecode.android_scripting/.activity.ScriptingLayerServiceLauncher \
  --ei com.googlecode.android_scripting.extra.USE_SERVICE_PORT 51943

2.指定连接

现在您需要使用adb转发您的端口(假设查找的值为51943):

代码语言:javascript
复制
$ adb forward tcp:51943 tcp:51943
$ export AP_PORT=51943

3.启动脚本

之后,您应该能够在本地运行您的脚本:

代码语言:javascript
复制
$ python my_script.py

Wifi连接

如果你想通过wifi上网,你不需要用adb转发你的端口。相反,您必须使用公共服务器并另外指定您的主机:

代码语言:javascript
复制
$ export AP_HOST=192.168.0.100 

参考文献

有关更多帮助,请参阅Wiki page addressing this topic

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10839879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档