C++在 Windows 上编译 Android 钛移动 1.8.1 模块时出错

发布于 2025-01-01 09:33:53 字数 1152 浏览 1 评论 0原文

我正在尝试为 Titan Mobile 1.8.1 开发一个 Android 模块。以下是我正在使用的工具:

  • Titanium studio:1.0.7
  • Titanium mobile sdk:1.8.1
  • Android SDK:r16
  • Android NDK:r7(平台:API 8 + google API)
  • cygwin:1.7.9-1
  • ant:1.8.2
  • gperf:最新

我正在按照此处的说明进行操作: https://wiki.appcelerator.org/display/guides/Android+Module +开发+指南 在这里: https://wiki.appcelerator.org/display /guides/Android+Module+Porting+Guide+for+1.8.0.1 我已按要求设置了所有路径和环境变量。 我正在从命令行工作,使用 ant (不使用 eclipse)来构建模块。

我正在尝试构建由钛“创建”命令创建的模块骨架。 构建时,我收到 cpp 错误,例如:

jni/<domain>.mymodule.ExampleProxy.h:22: error: expected class-name before '{' token

产生错误的代码行是:

class ExampleProxy : public titanium::Proxy
{

根据我的 c++ 经验,当未定义父类时会发生这种情况。 但源文件似乎正确地包含来自 titan sdk 的“Proxy.h”文件,该文件在“titanium”命名空间中正确定义了类“Proxy”。

有没有人遇到过同样的问题并找到解决方案,或者可以以某种方式提供有用的提示?

I am trying to develop an android module for titanium mobile 1.8.1. Here are the tools I am using:

  • Titanium studio: 1.0.7
  • Titanium mobile sdk: 1.8.1
  • Android SDK: r16
  • Android NDK: r7 (platform: API 8 + google APIs)
  • cygwin: 1.7.9-1
  • ant: 1.8.2
  • gperf: latest

I am following the instructions from here:
https://wiki.appcelerator.org/display/guides/Android+Module+Development+Guide
and here:
https://wiki.appcelerator.org/display/guides/Android+Module+Porting+Guide+for+1.8.0.1
I have set-up all the PATH and environment variables as requested.
I am working from command line, using ant (not using eclipse) to build the module.

I am trying to build the module skeleton that was created by titanium "create" command.
When building, I get cpp errors, like:

jni/<domain>.mymodule.ExampleProxy.h:22: error: expected class-name before '{' token

The lines of code producing the error are:

class ExampleProxy : public titanium::Proxy
{

From my c++ experience, this happens when the parent class is not defined.
But the source file appears to be correctly including a "Proxy.h" file, from the titanium sdk, that correctly defines class "Proxy", in the "titanium" namespace.

Has anyone experienced the same problem and found a solution, or can in some way offer a useful hint?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

冷…雨湿花 2025-01-08 09:33:53

检查您的模块是否没有命名空间(com.giorgio.module 到 gorgiomodule)并避免使用特殊字符。
生成的代码不能处理所有情况。

Check that your module has no namespace (com.giorgio.module to gorgiomodule) and avoid special characters.
Generated code does not handle all cases.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文