Tag: c

在c ++中有效的java builder成语等价?

这是自从阅读Effective Java以来​​我一直在使用的一个很好的习惯用法。 我一直试图找到一个C ++等价物或类似的东西,并没有运气。 GoF书中的传统建筑模式在我的案例中并不适用。 这是一个复杂的对象,有一个非常混乱的构造函数。 下面是Java的一个小实现。 class ComplicatedObject { private String field1; private String field2; private int field3; private ComplicatedObject(Builder builder) { this.field1 = builder.myField1; this.field2 = builder.myField2; this.field3 = builder.myField3; } public static class Builder { private String myField1 = “some default”; private String myField2 = “some other default”; private int myField3 = […]

Android NDK。 找不到本机Lcom的实现

毕竟我已经设法“准备”我的NDK日食(至少我认为如此),它不再在c代码争论,但现在我得到“没有找到本机Lcom的实现”任何时候我执行任何本机代码。它也发生在NDK的样品上.. 我的.java … private native float pi(); static { System.loadLibrary(“shit”); } … System.out.println(pi()); … 我的.cpp #include jfloat Java_com_example_shit_MainActivity_pi(JNIEnv * env, jobject obj) { return 3.1415; } 我的.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := shit LOCAL_SRC_FILES := shit.cpp include $(BUILD_SHARED_LIBRARY) 我的错误日志 11-14 18:30:16.231: D/dalvikvm(1739): Trying to load lib /data/data/com.example.shit/lib/libshit.so 0x413b1fc8 11-14 18:30:16.241: D/dalvikvm(1739): Added […]

Android FFImageLoading使用URI(Xamarin)

我试图从光标加载联系人图像,所以我有每个图像的URI。 但是我想使用FFImageLoading库将这些图像添加到视图中,这样我就可以轻松加载占位符并进行圆形变换。 但是,我在使用带有URI的库时遇到了困难 – 我尝试使用Path将URI转换为url以使用LoadFromURL方法,但这种做法并不成功。 所以我想知道使用LoadImage或LoadStream方法是否更好,但我不确定如何最好地这样做。 这是我本来想要做的 // use FFImageLoading library to asynchronously: await ImageService .Instance .LoadUrl(item.PhotoURL, TimeSpan.FromHours(Settings.ImageCacheDurationHours)) // get the image from a URL .LoadingPlaceholder(“placeholderProfileImage.png”) // specify a placeholder image .Transform(new CircleTransformation()) // transform the image to a circle .Error(e => System.Diagnostics.Debug.WriteLine(e.Message)) .IntoAsync(viewHolder.ProfilePhotoImageView); 但是,对于我从联系人获得的图像,我有一个Uri,我可以使用以下内容加载它,但我无法对其进行转换: var contactUri = ContentUris.WithAppendedId(ContactsContract.Contacts.ContentUri, Contacts[position].LongId); var contactPhotoUri = Android.Net.Uri.WithAppendedPath(contactUri, Android.Provider.Contacts.Photos.ContentDirectory); […]

XBee双向通信(发送方和接收方)同时进行

假设我正在尝试制作聊天程序,例如YouTubevideoXBee基础知识 – 第2课 – AT模式下两个XBees之间的简单聊天程序 。 在这段video中,他解释说一个XBee是一个发送者,它使用Arduino向另一个XBee发送“Hello world”。 但是,XBee能够同时发送和接收数据吗? 路由器是否能够与协调器通信,反之亦然? 另外,我想编写自己的软件来接收和发送数据,而不是使用Arduino软件。 有没有库和API? 文章或video会很好。

销毁后创建JVM

我试图在调用destroyVM之后调用JNI_CreateVM,但它总是返回-1。 这是JDK中的错误吗? 我发现以下链接描述了同样的问题: JNI Bug 该链接有一个示例代码,可以重现我遇到的问题。 有人知道如何解决这个问题吗? 谢谢, 萨米

从c / c ++定义/实例化一个java对象

我在java中的代码如下所示: class MyClass { public void MyFunc(ISomeListener listener); } 我想从c ++程序中调用此方法并将所需参数传递给它。 请注意,该参数是接口的实现。 因此,我需要从c ++ 定义 AND 创建 java对象并将其传递给方法。 我怎样才能做到这一点? PS如果有帮助,最初的问题是java程序是硬件的接口(如驱动程序)。 我正在尝试从这个java代码创建一个DLL,以便它可以在任何语言中使用。 所以我想我会用C / C ++包装代码,然后用它来制作一个DLL。

如何使用JNI传递和接收对象

我有一个JAVA应用程序,我希望使用JNI将对象作为参数传递给C代码,并且我想再次使用JNI从C代码接收对象到JAVA 。 在JAVA方面,我只是创建了一个应用程序并将其传递给方法,如下所示 JlibFprint.fp_image_data fpimg = new JlibFprint.fp_image_data(); //object to be pass //fp_image_data is the static inner class of the class JlibFprint JlibFprint.fp_image_data fpimg1 = new JlibFprint.fp_image_data(); //received object 这个对象传递给像这样的方法 fpimg1 = JlibFprint.binary_image(fpimg); 该方法的JNI代码如下所示: JNIEXPORT jobject JNICALL Java_jlibfprint_JlibFprint_binary_1image(JNIEnv *env, jclass jcls,jobject imgobj) { struct fp_img img; struct fp_img *imgptr; imgptr = &img; jfp2cfp(env,imgobj,imgptr); fp_init(); imgptr […]

从socket读取json字符串

我有java服务器,我正在编写服务器从客户端读取命令, 用C#编写的客户端以json字符串的forms通过socket发送命令。 该命令看起来像这样 { “command”: “blah”, “key1”: “value1”, “key2”: “value3”, “key3”: “value4”, } json字符串每次都可以有不同数量的key-val对,因此没有静态计数来测量json命令中的行数。 以下是C#客户端如何将json字符串发送到java服务器 String json = JsonConvert.SerializeObject(map, Formatting.Indented); streamWriter.WriteLine(json); streamWriter.Flush(); 我想在用android编写的java代码中读取json。 它看起来像下面所示, 它正确地读取json行但是在读完json命令的最后一行后它会阻塞我不确定知道该命令已经结束的正确方法是什么。 serverSocket = new ServerSocket(4444); clientSocket = serverSocket.accept(); InputStream inStream = clientSocket.getInputStream(); InputStreamReader inStreamReader = new InputStreamReader(inStream); BufferedReader buffReader = new BufferedReader(inStreamReader ); String input = “”; while((input = buffReader.readLine())!= null) […]

Java中的C ++ typedef?

在Java中是否有类似于C ++ typedef / using的东西? 在C ++中我会写 using LatLng = std::pair;

如果没有抽象成员,基类应该标记为抽象吗?

如果一个类没有抽象成员,那么它是否可以被标记为抽象? 即使没有直接实例化的实际理由呢? (除了unit testing)