小编Bun*_*les的帖子

如何使用 xcodebuild 构建 iOS 框架?

尝试从命令行构建我的 iOS 框架时,我得到“MyFramework.framework.xcarchive”而不是“MyFramework.framework”。

在 Xcode 中构建时,我得到了正确的结果,而不是从命令行。

我的构建命令非常简单:

xcodebuild -project myFramework.xcodeproj -scheme myScheme -archivePath "/dev/builds" archive
Run Code Online (Sandbox Code Playgroud)

我的“.framework”文件在哪里?

xcode xcodebuild ios-frameworks

4
推荐指数
1
解决办法
6121
查看次数

为什么Android jvm->GetEnv()为多个线程返回相同的“env”?

我用来jvm->GetEnv(&envThread, JNI_VERSION_1_6)获取多线程的“env”以便进行多个envThread->GetMethodID()调用。两个线程都正确连接到 JVM。

我在第一个线程上调用“GetMethodID()”返回的函数没有任何问题,但是当第二个线程尝试调用时,我看到以下消息:

art/runtime/check_jni.cc:65] JNI DETECTED ERROR IN APPLICATION: thread Thread[13,tid=8207,Native,Thread*=0xaed08400,peer=0x12dcd080,"Thread-10224"]
  using JNIEnv* from thread Thread[1,tid=8148,Runnable,Thread*=0xb4e07800,peer=0x87bc5ef0,"main"]

A/art(8148): art/runtime/check_jni.cc:65 in call to CallVoidMethodV
08-31 14:11:08.029: A/art(8148): art/runtime/check_jni.cc:65] "Thread-10224" prio=10 tid=13 Runnable
08-31 14:11:08.029: A/art(8148): art/runtime/check_jni.cc:65] group="main" sCount=0 dsCount=0 obj=0x12dcd080 self=0xaed08400
08-31 14:11:08.029: A/art(8148): art/runtime/check_jni.cc:65] sysTid=8207 nice=-11 cgrp=apps sched=0/0 handle=0xafb18b00
08-31 14:11:08.029: A/art(8148): art/runtime/check_jni.cc:65] state=R schedstat=( 17710887 6014947 64 ) utm=1 stm=0 core=3 HZ=100
08-31 14:11:08.029: A/art(8148): art/runtime/check_jni.cc:65]   | stack=0xaee04000-0xaee06000 stackSize=1012KB
Run Code Online (Sandbox Code Playgroud)

因为我对第二个线程jvm->getEnv()返回的调用JNI_OK,所以它已经附加(如预期)。但没想到的是,返回的 JniENV …

c++ java-native-interface android android-ndk jnienv

3
推荐指数
1
解决办法
5015
查看次数

如何从C ++文件访问$(TARGET_ARCH)?

使用Android NDK,我想知道在我的C ++头文件中执行预处理程序代码时哪个目标体系结构处于活动状态。例如,我的代码在“ armeabi”和“ armv7”上的行为会有所不同。

$(TARGET_ARCH)变量可以在makefile中使用,但是是否可以从C ++头文件中访问该变量?

谢谢。

c++ android android-ndk

2
推荐指数
1
解决办法
889
查看次数

为什么这个变量被标记为"未使用"?

我的C++编译器发出警告,指出以下'intVar'变量是"未使用".

void MyClass::MyMethod(bool bFlag)
{
    int intVar = 10;
    if (bFlag)
        intVar = 20;
}
Run Code Online (Sandbox Code Playgroud)

当变量显然被使用时,为什么编译器会这样做呢?这是编译器应该修复以识别实际上"使用"的东西吗?

c++ gcc clang

1
推荐指数
1
解决办法
64
查看次数