我正在使用 R Studio 在 R 中进行数字信号处理工作,我认为将其扩展到 Android 应用中是个不错的主意。我知道人们用过 Kivy用 Python 开发 Android 应用程序,我知道有可能 wrap R code in Python ,那么这可行吗?我读到有可能 run R code on Android ,只是不确定是否可以将它添加到我的项目中。我也不需要用 R 编写整个应用程序。是否有任何与此相关的示例/文档?
最佳答案
事实证明你可以!我使用 Kivy 构建了一个更复杂的应用程序和 rpy2 package ,但我将在此处演示一个简单示例。
您可以像这样定义您的 R 代码: r_code.py
from rpy2.robjects.packages import SignatureTranslatedAnonymousPackage
r_code = """
add <- function(x, y) {
return(x + y)
}
"""
r_lib = SignatureTranslatedAnonymousPackage(r_code, "r_lib")
您的 Kivy 应用程序将如下所示: main.py
from kivy.app import App
from r_code import r_lib
class MainApp(App):
def build(self):
window = BoxLayout(orientation='vertical')
label = Label(text=str(r_lib.add(3, 4)[0]))
b.add_widget(label)
return b
if __name__ == "__main__":
MainApp().run()
如果你想把它打包成一个 Android 应用程序,你可以按照 official doc 中的说明进行操作。 .如果您遇到 rpy2 错误,您可能必须从 here 为您的系统安装正确的版本。 .
编码愉快!
关于android - 是否可以使用 R 编程语言进行 Android 开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53164568/