Post

Replies

Boosts

Views

Activity

Setup Cpp-Swift Interoperability using CMake
I have been using the Cpp-Swift Interoperability in Xcode15 for direct communication between Cpp and Swift code. It required a few Build settings changes for the Swift Compiler, creating clang modules(module map file) to access cpp code in swift, specifying module map path to the swift compiler etc. I wanted to use this interoperability feature in my visual studio project which is using Cmake. I want to build via cmake, using Xcode generator. Prior to Swift5.9, we were using a ObjC bridging header whose support was provided in the Cmake using the Xcode attribute flag 'XCODE_ATTRIBUTE_SWIFT_OBJC_BRIDGING_HEADER'. Similarly we were specifying the generated header using the attribute 'XCODE_ATTRIBUTE_SWIFT_OBJC_INTERFACE_HEADER_NAME' I m not able to find similar Xcode attribute property flags for my Cmake to enable this interoperability. What are the changes that we need to make in the Cmake(using Xcode generator) for this new interoperability to work. Can someone help with this?
1
0
577
Oct ’23
Setup Cpp-Swift Interoperability using CMake
I have been using the Cpp-Swift Interoperability in Xcode15 for direct communication between Cpp and Swift code. It required a few Build settings changes for the Swift Compiler and creating clang modules to access cpp code in swift. I wanted to use this interoperability feature in my visual studio project which is using Cmake. I m not able to find the Xcode attribute property flags for my cmake to enable this interoperability. Can someone help with this?
0
2
321
Oct ’23
getting device manufacturer name and device serial number programatically in mac
Hi, I am an absolute beginner at IOKit registry and have a usecase to obtain the device manufacturer name, device serial number and device USB vendor name progrmatically. I m able to obtain the same using ioreg command but I wanted to get these values within my program. Thanks in advance. Device serial number: ioreg -rd1 -c IOPlatformExpertDevice | grep 'IOPlatformSerialNumber' Device manufacturer name: ioreg -rd1 -c IOPlatformExpertDevice | grep 'manufacturer' USB device vendor names: ioreg -rd1 -c IOUSBHostDevice | grep "USB Vendor Name"
1
0
673
Oct ’23
valid check to detect process running on cloud VM vs local machine in mac
I m trying to identify if my launched process is running on a local mac machine(desktop/laptop) or a virtual macOS X instance like AWS EC2, Azure, MacStadium etc. I am using the below check for this: 1 . If running on native Apple hardware, the returned value contains the model name of the hardware: $ sysctl -n hw.model Macmini8,1 On virtualized hardware, the value may contain the hypervisor name: $ sysctl -n hw.model VMware7,0 If the command output doesn't contain the "Mac" substring, the malware considers that it is running in a virtual machine. 2. Checking USB device vendor names The commands used: ioreg -rd1 -c IOUSBHostDevice | grep "USB Vendor Name" Sample output on native Apple hardware: "USB Vendor Name" = "Apple Inc." "USB Vendor Name" = "Apple Inc." "USB Vendor Name" = "Apple, Inc." On virtualized hardware, the value may contain the hypervisor name: "USB Vendor Name" = "VirtualBox" "USB Vendor Name" = "VirtualBox" A virtual machine can be detected by checking if the command output contains a hypervisor name, for example "VirtualBox", "VMware", etc. 3 . Checking the "IOPlatformExpertDevice" registry class The command used: ioreg -rd1 -c IOPlatformExpertDevice The following fields of the IOPlatformExpertDevice class can be checked in order to detect a virtual machine: I wanted to know can a combination of these be used to identify a process running on a Cloud VM with certainity?
2
0
726
Oct ’23
detecting if my process is running on a virtual macos x instance and not on my local mac machine
I m trying to identify if my launched process is running on a local mac machine(desktop/laptop) or a virtual macOS X instance like AWS EC2, Azure, MacStadium etc. I have followed this link which searched for its limited providers in the output, but I m not bound to any limited providers and looking for a general solution which is applicable to all the providers. Is there some hardware/network/virtualization-related information that can be used to identify if the process is launched on a virtual MacOS instance? OR is there some system Information that I can use to be sure that my process is running on a local machine?
3
1
1.5k
Sep ’23
Add another application action to the Quick Action Library in Automator mac
I m using Mac Automator app to add new actions to the right click quick menu for files and folder. As can we seen in the image we have a number of actions available for mail app, Calendar, photos and other apps. I wanted to know whether something similar can be done for my app. I wanted to list my app in the library and provide some similar action options. Can it be done?
0
1
568
Sep ’23
Notification Service Extension not getting invoked in macOS
I have created a Notification service extension as target to the main MacOS application. I want to update the content of my remote notification using this extension but due to some reason the extension is not getting invoked to update my remote notification. The auto execution of the below method seems to fail for my app extension. didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) I have tried the suggested solutions in this link but it did not help. Maybe there are some differences to using Notification service for MacOS and ios that I m not aware. I am able to send normal remote notifications using the curl command, but it is not invoking the notification service extension. Below is the curl command. curl -v --header "apns-topic: $TOPIC" --header "apns-push-type: alert" --header "authorization: bearer $AUTHENTICATION_TOKEN" --data '{"aps": {"mutable-content": 1,"alert": {"title": "Encrypted title","body": "Encrypted body"}},"MEETING_ORGANIZER": "MyMeet"}' --http2 https://${APNS_HOST_NAME}/3/device/${DEVICE_TOKEN} Is there anything I m missing that is causing this problem?
0
0
489
Aug ’23
Notification Content Extension not working in MacOS
I've set up a Notification Content Extension for my app, but it's not getting called(tried both local and remote push). I've read the Apple dev guide, and I've set up everything as it says. https://developer.apple.com/documentation/usernotificationsui/customizing_the_appearance_of_notifications I've looked over the common issues (setting proper deployment targets and setting category identifiers from the backend and in the .plist) After receiving the notification, I'm not able to get the expanded view and neither is the didReceive(_ notification: UNNotification) of my extension view controller getting invoked. Is there something I'm missing while doing the extension setup, I m not able to figure out the problem? Also, I m not able to understand this note from apple "Notification content app extensions are supported only in iOS apps" when all the Notification content Extension APIs are provided for MacOS also?
0
1
633
Aug ’23