Workaround needed for installing minimum OS 4.4 APK on 4.0.4 Android OS - android-4.4-kitkat

I am trying to install some APKs which have the minimum OS version parameter set to 4.4.4 KitKat and minimum SDK #16.
The platform is the Epson Moverio BT-200 see-through glasses which is basically a tablet.
More on the device:
https://www.cnet.com/products/epson-moverio-bt-200-smart-glasses-8-gb/specs/
The BT-200 itself comes without Google Play Store and needs to be rooted and Play Store installed. This part is done.
I also tried to install APKs and edit the build.prop file first. Set the OS version to 4.4.4 but got the exception that minSDK version criteria failed. Tried with ADB install as well. Of course when I set the SDK version in the build.prop file it ruined the installed apps and most of them freezed, suddenly stopped etc.
My question is, how could I "fool" the APK installer to install the APK(s) to get the programs running? Is there a way?
My reason: the BT-200 is a fantastic FPV device with android. The newest BT-300 model has android 5 but while this still works like a charm I'd spend my money rather on beers than another FPV glasses. :)
Any help appreciated.

4.4.4 KitKat is api 19 , did you set your targetsdk to api 19 ? as for minsdk just change it to api 15 . the bt moverio from what i know is either api 15 or api 19, check on your bt moverio glasses what api it supports and then set the target sdk to that api.

Related

DJI OSDK and OSDK-ROS 3.7 and 3.8 bug demo_flight_control take off and halt

I`m facing issue that with OSDK-ROS 3.7 and 3.8, I could not run demo_flight_control sample correctly
After api auto taking off in the simulator, the drone just stuck there. And there is command being published to the flight_control ENU topic.
The GPS based demo_mission has no issue. It can auto fly to the coordinate.
The hardware and firmware version I`m using is
STATUS/1 # parseDroneVersionInfo, L729: Hardware = A3
STATUS/1 # parseDroneVersionInfo, L730: Firmware = 3.3.8.47
The minimal sample for reproducing the issue is from here
https://github.com/dji-sdk/Onboard-SDK-ROS/tree/3.8/dji_sdk_demo/src
The flight_control issue is the same for OSDK (option b) and OSDK-ROS (default)
For Previous 3.3 3.5 3.6 I never encounter this before. I`ve send report to dev#dji.com. No response yet
I solve the problem by myself
On https://github.com/dji-sdk/Onboard-SDK-ROS/tree/3.7 and 3.8 reqires at least 1.7.6
But I can't find it 1.7.6 in the DJI assistant 2 firmware only 1.7.7 and 1.7.5. So I decided to use 1.7.7
But 1.7.7 does only work for GPS waypoint mission and does not support setpoint_generic based control
So the solution is to use 1.7.5 to get both GPS based mission and ros topic based velocity control working.
Below this version, the version control in the DJI system is hell with randomly labeled version. So you have to keep trial and error to get things up
Below is DJI Email response. Pretty useless but will provide some cue for others to debug the similar issue
Bruce Cheung (DJI)
Dear Shenghai,
Thank you for contacting DJI.
We cannot reproduce the problem you mentioned by using A3 with OSDK3.7 and 3.8
Can you try to take control authority directly? using /dji_sdk/sdk_control_authority
Also try publishing the /dji_sdk/flight_control_setpoint_ENUposition_yaw control command, do not use the sample.
Thank you for your understanding and support, hope you a delighted life.
Best Regards,
DJI SDK Support Team
Hi Bruce
I tried what you mentioned., use
FIrst launch sdk.launch
Then, rosservical call /dji_sdk/sdk_control_authority 1
And write a simple empty C++ script to publish to /dji_sdk/flight_control_setpoint_generic.
The result is the same. the drone is not moving in the DJI assistant2 simulator.
My theory is the A3 firmware version might be too high on GitHub https://github.com/dji-sdk/Onboard-SDK-ROS/tree/3.7
it says 3.7 and 3.8 support
A3/A3 Pro 1.7.6.0
But I can't find it 1.7.6 in the DJI assistant 2 firmware only 1.7.7 and 1.7.5. So I decided to use 1.7.7
Will this be the issue?
Its 11 pm in Singapore, I ll take two videos of sample and custom method tmr morning. I`ll upload the video to youtube. you can see from there.
Regards
Shenghai Yuan

If I have macbook that can't get last version of Xcode - could I publish my applications to App Store?

I have Macbook Pro 2011 and now I want to develop apps for iOS. Today I understood that I can't install macOS Mojave, and relatively I can't get last Xcode version. The latest version for me - is 10.1.
So, I have question: could I publish applications in the future to App Store, or it's the end and I need buy new Macbook ?
You mentioned that you are having Xcode version 10.1 which covers iOS 11+ compatibility & also iPhone X Max simulator supports. So in all you have not much older version of Xcode.
As per my knowledge you will still be able to develop & deploy apps from this Xcode version. And also Apple will continue support for at least next 2 years for this Xcode version.
So you can still be able to use your current Mac system.
Important Note :
Although current Mac system will allow you to develop & deploy apps its more preferred to arrange new Mac system to make sure get support of the new Apple features & functions.
Hope it will help you.

Can't Install ARCore Emulator for Android Studio

I don't know if I'm allowed to ask this question but I really can't figure out how to use ARCore on Android Emulated Device.
According to the official guide I'm supposed to use API 8.1 on pixel/pixel 2 device in order to run any app which uses ARCore. Sadly those emulator don't come with the support for Play Store, and without Play Store I can't Instal ARCore on the device.
The device images that come with built in Play Store can't run ARCore instead. I'm really confused about how am I supposed to test anything for ARCore in this way.
I need it to develop an app for a University program and I need to become familiar with Augmented Reality Development but I can't even get started because of this issue.
Updated: October 20, 2022.
For using ARCore Emulator, at first, you have to create a virtual device with support for AR. I'm running Android Studio Dolphin | 2021.3.1 on macOS Monterey 12.6.
I created Pixel 6 Pro virtual device:
ARCore's targetSdkVersion has been set to Android API level 33.
Here are the steps you have to make in order to get a working Emulator:
Set up Android Debug Bridge. I set up adb for Mac.
Download Google_Play_Services_for_AR_1.34.0_x86_for_emulator.apk from GitHub repository.
Run your AVD.
Type in Bash Terminal the following command (to be sure that the port is 5554):
adb devices
Result:
// emulator-5554 device
Go to the folder where Google_Play_Services_for_AR_1.34.0_x86_for_emulator.apk is located. For instance:
cd ~/Desktop
To install Emulator, type in Terminal the following line, while the virtual device is running:
adb install -r Google_Play_Services_for_AR_1.34.0_x86_for_emulator.apk
Repeat previous steps for additional AVDs you’d like to use.
Delight!
P.S.
Take it into consideration: Android Emulator does not support such ARCore APIs as: Depth API, Geospatial API or Augmented Faces API. That's because Emulator doesn't have corresponding sensors. When any of these features are enabled, the Emulator picture can't render correctly: a screen will be entirely black, although UI elements drawn on top of the Emulator picture still be rendered.
Sergei's answer was right at the time, but the version of the ARCore app in his link (v1.1.0) is now too old. The following worked for me (after many false starts):
VIRTUAL DEVICE SPECIFICATIONS
Device: Pixel API 27
System image: Oreo / API Level 27 / ABI x86 / Android 8.1 (Google Play)
LINK TO ARCORE APK:
https://www.apkmirror.com/apk/google-inc/arcore/arcore-1-5-18091013-release/arcore-1-5-180910139-android-apk-download/download/
Download the ARCore APK to your desktop. In Android Studio, set up and then start the virtual device as specified above, open the Play Store app on it and sign in. Then drag the ARCORE APK file onto the virtual device; it should silently install. Finally, run hellosceneform on the virtual device.
Just install to emulator ARCore_1_1_x86_for_emulator.apk. Just drug to emulator. Check this link https://github.com/google-ar/arcore-android-sdk/releases/tag/v1.1.0

Android ndk debug on sumsung phones

some days ago, I bought a phone Sumsung s4.then I find that I couldn't use ndk debug on the phone. I have surching lots of infomation , but not get a solution.
The question is Sumsung have changed some code for the system./data/system/packages.list is used by 'run-as' both to get the data directory for an app, and to start gdbserver on the device. Most samsung phones have this moved to /dbdata/system/packages.list, but 'run-as' wasn't rebuilt to reflect this change, and throws an error. So, the ndk-gdb script can't connect to these phones.
so please help me!!!!
The gdb (and invoking script) built into the Apportable SDK has a workaround for the ndk-gdb run-as issue on the Samsung S4 (and many Android 4.3 phones)
More details available at run-as Package 'a.b.c' is unknown - Galaxy S4 Jellybean or Android 4.3

How can I test app on older iPhone 3G with iOS v 4.2.1

I have been testing my app on my iPhone 4S and my wife's iPhone 3GS. I would also like to test it on the older iPhone 3G running iOS 4.2.1 (the highest version it will support).
When I connect the 3G to my Mac and attempt to provision it, I get two error messages:
Could Not Support Development
and
Xcode cannot find the software image to install this version
I am using the latest version of xCode (v. 4.4.1).
Is there some place to find the missing 'software image' in order to test my app on the 3G and older iOS devices?
If not, how does one know what devices the app will work with?
I do note that the newer iPhones that run iOS5 and above also support Automatic Reference Counting (ARC). I have checked the ARC button whenever I created a new project. Does one have to abandon ARC if one wants their app to work on an older pre iOS5-capable device?
...Dale
Is there some place to find the missing 'software image'?
I believe you can download it through iTunes by clicking restore in the device's summary page and then searching for the *.ipsw file. iTunes might even share the image once it is downloaded automatically.
Does one have to abandon ARC if one wants their app to work on an
older pre iOS5-capable device?
Not in entirety. iOS 4.2 supports the vast majority of ARC, But it does not support weak references.
Also, there are a few hoops you must jump through to target. I have an answer here that outlines them (with screenshots).
I know for a fact that Xcode 4.4.1 can use an iOS 4.2.1 device as a target, since I can test on a second generation iPod touch running 4.2.1.
Finally, If you are not able to obtain a software image, you could try adding your device by UDID directly on the provisioning portal through developer.apple.com.(The old fashioned way)

Resources