8

わかりました-私は欲求不満の馬鹿のように感じています。そのことを前もって述べたいと思います。

Android用のPythonアプリケーションを開発できるように、Python/Androidのセットアップを実行しようとしています。SL4AとPythonインタープリターの両方をAndroidデバイスにインストールしており、実行中の電話でアプリケーションを作成できます。

問題は、PCで開発を続行し、Androidデバイスと対話するにはどうすればよいかということです。extrasパッケージを解凍し、$ PYTHONPATH /site-packages/に入れました。EcpliseをPyDevおよびAndroidパッケージと統合し、AP_PORTおよびAP_HOST環境変数を設定しました。

次のコードを実行すると:

import android
droid = android.Android()
droid.makeToast("Hello")

Eclipseで、「com.googlecode.android_scripting.rpc.RpcError:UnknownRPC」などのエラーが発生します。悪いマジックナンバーに。

CLI経由でPythonにアクセスして、次のように入力すると

import android

次の出力が得られます

com.googlecode.android_scripting.rpc.RpcError: Unknown RPC.

ヘルプや初心者向けのチュートリアルをいただければ幸いです。

他の人が比較的簡単にセットアップされているのを見るので、私は何か間違ったことをしているに違いないことを知っています。

前もって感謝します。

4

1 に答える 1

8

1.サーバーを起動します

デバイス上

まず、デバイスをUSBに接続します。次に、リモートデバッグを行うには、デバイスでサーバーを起動する必要があります。

SL4A -> Interpreters -> Menu -> Start Server

プライベートのものが望ましいです。

次に、Androidの通知領域でサーバーのポートを検索できます(SL4A r5を使用すると、設定で固定ポートを指定できます)。

PCから

adbまたは、特定のポート(ポートの設定に必要なr5)を使用してPCからサーバーを起動することもできます。

$ 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であると想定)。

$ adb forward tcp:51943 tcp:51943
$ export AP_PORT=51943


3.スクリプトを開始します

その後、スクリプトをローカルで実行できるようになります。

$ python my_script.py


Wifi接続

Wi-Fi経由で移動する場合は、ポートをで転送する必要はありませんadb。代わりに、パブリックサーバーを使用し、ホストを追加で指定する必要があります。

$ export AP_HOST=192.168.0.100 


参考文献

詳細については、このトピックを扱っているWikiページを参照してください。

于 2012-06-05T08:37:37.703 に答える