[WIP] S7E Pie Ports - SView Cover Support (Dev Help Needed) - Samsung Galaxy S7 Edge Themes, Apps, and Mods

Hi everyone,
I tried some Pie port ROMS and I found none has support for the S View Cover (no sleep, no cover screen). Lastly I settled on BlackDiamond NFE port v4.0, and so I'm trying to add support for the S View Cover which I own.
Long story short: I'm trying to make this work by modifying some system apks but it still doesn't work.
So I was investigating the S View Cover not supported on S7E BlackDiamond Pie Roms and here are my findings:
- To enable the S View Cover support, all there is to do is to put the following file into /system/etc/permissions/com.sec.feature.cover.sviewcover_level4.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<permissions>
<feature name="com.sec.feature.cover.sviewcover" level="4"/>
</permissions>
- Then the cover is recognized and all BUT SystemUI does not like it and continuously crashes until reboot, or until you remove the cover. The crash is as follows:
Code:
E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: com.android.systemui, PID: 4764
E AndroidRuntime: android.view.InflateException: Binary XML file line #1: Binary XML file line #2: Attempt to invoke virtual method 'void android.widget.FrameLayout.addView(android.view.View)' on a null object reference
E AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #2: Attempt to invoke virtual method 'void android.widget.FrameLayout.addView(android.view.View)' on a null object reference
E AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.FrameLayout.addView(android.view.View)' on a null object reference
E AndroidRuntime: at com.samsung.android.app.cover.ui.CoverServiceBoxContainer.onFinishInflate(CoverServiceBoxContainer.java:467)
E AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:915)
E AndroidRuntime: at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:863)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:554)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:461)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:383)
E AndroidRuntime: at com.samsung.android.app.cover.ui.sviewcover.SViewCoverView.onFinishInflate(SViewCoverView.java:78)
E AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:915)
E AndroidRuntime: at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:863)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:554)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:461)
E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:383)
E AndroidRuntime: at android.view.View.inflate(View.java:26197)
E AndroidRuntime: at com.samsung.android.app.cover.CoverViewFactory.makeCoverView(CoverViewFactory.java:20)
E AndroidRuntime: at com.samsung.android.app.cover.CoverEx.reloadCoverView(CoverEx.java:284)
E AndroidRuntime: at com.samsung.android.app.cover.CoverEx.onCoverAttached(CoverEx.java:168)
E AndroidRuntime: at com.samsung.android.app.cover.plugin.PluginViewCoverImpl.onCoverAttached(PluginViewCoverImpl.java:38)
E AndroidRuntime: at com.android.systemui.cover.SysUICoverService.startCover(Unknown Source:33)
E AndroidRuntime: at com.android.systemui.cover.SysUICoverService.onPluginConnected(Unknown Source:24)
E AndroidRuntime: at com.android.systemui.cover.SysUICoverService.onPluginConnected(Unknown Source:2)
E AndroidRuntime: at com.android.systemui.splugins.SPluginInstanceManager$MainHandler.handleMessage(Unknown Source:183)
E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7045)
E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
- From what I understand, there are some missing resources in SystemUI to handle the S View Cover display, which makes sense.
- And that's where my understanding in Android stops, so if someone have any idea/advice to give me in order to fix this issue, I'd be glad to help make it work. I can do testings on my phone as needed.

Okay for the crash it says there is missing Method.
About the recompile i suggest to use BatchApktool and ofc set api to PIE. And disable sign output apks then recompile the apk when it's done recompiling.
Open the stock UI(the one comes with the rom)let's BD V4. Using Winrar and open your recently compiled apk too.
From your compiled apk copy the following
Resources.arsc
Classes1.dex
Classes2.dex
Res
And paste them in the stock apk. And choose "store" as compression method. Then push the apk to system

Hard
hello can you put the apk on the forum because it's too hard for me I can not do it:angel:

Alexandre05YTB said:
hello can you put the apk on the forum because it's too hard for me I can not do it:angel:
Click to expand...
Click to collapse
This is a WIP, it's not ready yet, but when this is done I'll make it available (but it'll be embedded in a ROM, not as a simple flashable zip, because the SystemUI varies for every ROM)

Mwyann said:
This is a WIP, it's not ready yet, but when this is done I'll make it available (but it'll be embedded in a ROM, not as a simple flashable zip, because the SystemUI varies for every ROM)
Click to expand...
Click to collapse
Thank you very much :good: have a nice day

So I got a working patched SystemUI APK this time - that is, it installs and boots correctly again. BUT, it gives me the same error when I try to use the sview cover. So now I have to figure out what exactly is missing, maybe it's not even inside systemui, IDK...

does it work now?

No it still doesn't, and I personally bought a Clear Case on a discount which works fine with my ROM so I kind of left this topic behind for someone else to look at it, sorry.

I was searching full screen caller but there is non for black diamond s73

Related

Hotspot tethering bug

Hello.I have a Moto X Play 6.0.1 and even after the install of latest firmware from PC with commands,I have f.close when I press to tether my phone.this is what scoop xposed module catches on f.close.thanks
android.content.res.Resources$NotFoundException: Resource ID #0x0
at android.content.res.Resources.getValue(Resources.java:1351)
at android.content.res.Resources.getColor(Resources.java:963)
at android.content.Context.getColor(Context.java:441)
at com.android.settings.HelpUtils.addIntentParameters(HelpUtils.java:170)
at com.android.settings.HelpUtils.getHelpIntent(HelpUtils.java:137)
at com.android.settings.HelpUtils.prepareHelpMenuItem(HelpUtils.java:104)
at com.android.settings.HelpUtils.prepareHelpMenuItem(HelpUtils.java:74)
at com.android.settings.SettingsPreferenceFragment.onCreateOptionsMenu(SettingsPreferenceFragment.java:297)
at android.app.Fragment.performCreateOptionsMenu(Fragment.java:2300)
at android.app.FragmentManagerImpl.dispatchCreateOptionsMenu(FragmentManager.java:2029)
at android.app.FragmentController.dispatchCreateOptionsMenu(FragmentController.java:265)
at android.app.Activity.onCreatePanelMenu(Activity.java:2857)
at com.android.internal.policy.PhoneWindow.preparePanel(PhoneWindow.java:567)
at com.android.internal.policy.PhoneWindow.doInvalidatePanelMenu(PhoneWindow.java:939)
at com.android.internal.policy.PhoneWindow$1.run(PhoneWindow.java:271)
at android.os.Handler.handleCallback(Handler.java:746)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5443)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:102)

[Guide] Install LineageOS/AOSP keyboard on any phone

You may want to use the LineageOS keyboard with some other rom. Just installing the .apk file will result in the keyboard crashing. We can install the required files manually to get the keyboard working. This requires root, but does not require any changes to /system
Getting the files
It's best to get the files from a real LOS rom, but if you don't have one you can extract them out of a rom. Download the official rom, then extract payload.bin with https://github.com/cyxx/extract_android_ota_payload. Then mount the system.img into an empty folder
Code:
mkdir temp
sudo mount system.img temp
Grab the files system/app/LatinIME/LatinIME.apk and system/lib64/libjni_latinime.so and put them on your phone
Installing
Install the apk like normal. Then you will have to copy the lib into /data
Code:
cmd list packages -f | grep inputmethod.latin
go to that folder and copy the lib into lib/arm64. This most likely needs root. Make sure to change the permissions
Code:
# cd /data/app/com.android.input.method.latin-whatever==/
# cd lib
# mkdir arm64
# chown system:system arm64
# cd arm64
# cp /sdcard/libjni_latinime.so ./
# chown system:system libjni_latinime.so
# chmod 644 libjni_latinime.so
The keyboard should now start without crashing.
phailyoor said:
You may want to use the LineageOS keyboard with some other rom. Just installing the .apk file will result in the keyboard crashing. We can install the required files manually to get the keyboard working. This requires root, but does not require any changes to /system
Getting the files
It's best to get the files from a real LOS rom, but if you don't have one you can extract them out of a rom. Download the official rom, then extract payload.bin with https://github.com/cyxx/extract_android_ota_payload. Then mount the system.img into an empty folder
Grab the files system/app/LatinIME/LatinIME.apk and system/lib64/libjni_latinime.so and put them on your phone
Installing
Install the apk like normal. Then you will have to copy the lib into /data
go to that folder and copy the lib into lib/arm64. This most likely needs root. Make sure to change the permissions
The keyboard should now start without crashing.
Click to expand...
Click to collapse
@phailyoor would you mind making this a magisk module? I was unable to get it to work by doing it manually. Tried getting it to work on OOS and had no luck
I don't really have experience with magisk, so I probably won't be making one anytime soon.
Did you get an error when following the steps? If not post the permissions by running ls -l and include logcat of the crash
phailyoor said:
You may want to use the LineageOS keyboard with some other rom. Just installing the .apk file will result in the keyboard crashing.
Click to expand...
Click to collapse
I installed following AOSP-alike keyboard provided via F-Droid, without any manual step needed! But good to know what is needed to do it manually! :good:
Simple Keyboard (Simply keyboard and nothing more)
https://f-droid.org/app/rkr.simplekeyboard.inputmethod
phailyoor said:
You may want to use the LineageOS keyboard with some other rom. Just installing the .apk file will result in the keyboard crashing. We can install the required files manually to get the keyboard working. This requires root, but does not require any changes to /system
Getting the files
It's best to get the files from a real LOS rom, but if you don't have one you can extract them out of a rom. Download the official rom, then extract payload.bin with github.com/cyxx/extract_android_ota_payload[/URL]. Then mount the system.img into an empty folder
Code:
mkdir temp
sudo mount system.img temp
Grab the files system/app/LatinIME/LatinIME.apk and system/lib64/libjni_latinime.so and put them on your phone
Installing
Install the apk like normal. Then you will have to copy the lib into /data
Code:
cmd list packages -f | grep inputmethod.latin
go to that folder and copy the lib into lib/arm64. This most likely needs root. Make sure to change the permissions
Code:
# cd /data/app/com.android.input.method.latin-whatever==/
# cd lib
# mkdir arm64
# chown system:system arm64
# cd arm64
# cp /sdcard/libjni_latinime.so ./
# chown system:system libjni_latinime.so
# chmod 644 libjni_latinime.so
The keyboard should now start without crashing.
Click to expand...
Click to collapse
Thank you so much for the detailed guide! I did this all without a hitch and AOSP now works on my OxygenOS. However, I noticed that glide typing doesn't work. Do you have any idea how to enable this feature? I would really really appreciate any help!
Edit: nevermind I figured it out (credits to this post: android.stackexchange.com/a/187686 ); if you download the libjni_latinimegoogle.so library from the openGapps github repo, and do the exact same process you do above for libjni_latinime.so, it enables gesture typing.
I cannot get it to work using your method (Running Android Pie, Google Pixel 2)
Logcat below, what went wrong?
Code:
12-11 20:05:46.011 5765 5765 W SubtypeLocaleUtils: KeyboardLayoutSet not found, use QWERTY: locale=en_AU extraValue=TrySuppressingImeSwitcher,AsciiCapable,SupportTouchPositionCorrection,EmojiCapable
12-11 20:05:46.014 5765 5765 W RichInputMethodSubtype: Can't find emoji subtype
12-11 20:05:46.014 5765 5765 W RichInputMethodSubtype: No input method subtype found; returning dummy subtype: Multi-lingual subtype: [email protected], zz
12-11 20:05:46.076 5765 5765 E putmethod.lati: No implementation found for long com.android.inputmethod.keyboard.ProximityInfo.setProximityInfoNative(int, int, int, int, int, int, int[], int, int[], int[], int[], int[], int[], float[], float[], float[]) (tried Java_com_android_inputmethod_keyboard_ProximityInfo_setProximityInfoNative and Java_com_android_inputmethod_keyboard_ProximityInfo_setProximityInfoNative__IIIIII_3II_3I_3I_3I_3I_3I_3F_3F_3F)
12-11 20:05:46.078 5765 5765 D AndroidRuntime: Shutting down VM
12-11 20:05:46.081 5765 5765 E AndroidRuntime: FATAL EXCEPTION: main
12-11 20:05:46.081 5765 5765 E AndroidRuntime: Process: com.android.inputmethod.latin, PID: 5765
12-11 20:05:46.081 5765 5765 E AndroidRuntime: android.view.InflateException: Binary XML file line #29: Binary XML file line #21: Error inflating class com.android.inputmethod.keyboard.emoji.EmojiPalettesView
12-11 20:05:46.081 5765 5765 E AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #21: Error inflating class com.android.inputmethod.keyboard.emoji.EmojiPalettesView
12-11 20:05:46.081 5765 5765 E AndroidRuntime: Caused by: java.lang.reflect.InvocationTargetException
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at java.lang.reflect.Constructor.newInstance0(Native Method)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.createView(LayoutInflater.java:647)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.parseInclude(LayoutInflater.java:965)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:859)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.KeyboardSwitcher.onCreateInputView(KeyboardSwitcher.java:464)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.latin.LatinIME.onCreateInputView(LatinIME.java:789)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.inputmethodservice.InputMethodService.updateInputViewShown(InputMethodService.java:1427)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.inputmethodservice.InputMethodService.showWindowInner(InputMethodService.java:1833)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.inputmethodservice.InputMethodService.showWindow(InputMethodService.java:1801)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.inputmethodservice.InputMethodService$InputMethodImpl.showSoftInput(InputMethodService.java:570)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.inputmethodservice.IInputMethodWrapper.executeMessage(IInputMethodWrapper.java:207)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.internal.os.HandlerCaller$MyHandler.handleMessage(HandlerCaller.java:37)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.os.Looper.loop(Looper.java:193)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6669)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: Caused by: java.lang.UnsatisfiedLinkError: No implementation found for long com.android.inputmethod.keyboard.ProximityInfo.setProximityInfoNative(int, int, int, int, int, int, int[], int, int[], int[], int[], int[], int[], float[], float[], float[]) (tried Java_com_android_inputmethod_keyboard_ProximityInfo_setProximityInfoNative and Java_com_android_inputmethod_keyboard_ProximityInfo_setProximityInfoNative__IIIIII_3II_3I_3I_3I_3I_3I_3F_3F_3F)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.ProximityInfo.setProximityInfoNative(Native Method)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.ProximityInfo.createNativeProximityInfo(ProximityInfo.java:222)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.ProximityInfo.<init>(ProximityInfo.java:81)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.Keyboard.<init>(Keyboard.java:123)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.internal.KeyboardBuilder.build(KeyboardBuilder.java:196)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.KeyboardLayoutSet.getKeyboard(KeyboardLayoutSet.java:232)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.KeyboardLayoutSet.getKeyboard(KeyboardLayoutSet.java:204)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.emoji.EmojiCategory.getKeyboard(EmojiCategory.java:374)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.emoji.EmojiCategory.addShownCategoryId(EmojiCategory.java:223)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.emoji.EmojiCategory.<init>(EmojiCategory.java:176)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.emoji.EmojiPalettesView.<init>(EmojiPalettesView.java:119)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: at com.android.inputmethod.keyboard.emoji.EmojiPalettesView.<init>(EmojiPalettesView.java:95)
12-11 20:05:46.081 5765 5765 E AndroidRuntime: ... 24 more
12-11 20:05:46.089 1183 1200 I ActivityManager: Showing crash dialog for package com.android.inputmethod.latin u0
My phone is not rooted, is there a way to install this keyboard without root? If not, can someone make that possible, thanks in advance.
Magisk module of LineageOS AOSP keyboard
Magisk module of LineageOS AOSP keyboard.
I put in attachment two magisk modules: laosime4arm32android81-1_0.zip - for arm32 architecture, laosime4arm64android81-1_0.zip - for arm64 architecture. Both modules are for android 8.1. I do not have devices with newer versions of android to test.
Also it's simple to manufacture versions for other versions of android: just replace LatinIME.apk and libjni_latinime.so inside zip to proper files from LineageOS appropriate distribution.
raven428 said:
Magisk module of LineageOS AOSP keyboard.
Click to expand...
Click to collapse
Thank you very much! I will test this on my Google Pixel 2 (Android 9).
SGH-i200 said:
Thank you very much! I will test this on my Google Pixel 2 (Android 9).
Click to expand...
Click to collapse
Works?
works on Miui 10?
I updated the keyboard apk, lib files and script to update with AOSP Keyboard 9.0 for Android Pie. Just flash in Magisk as a regular module and reboot. Credit goes to Raven428 for the original module, thank you! I flashed this on my Pixel 3a and OnePlus 6T and works fine. Make sure you have a good backup prior to just in case. If you want it to be Transparent then consider my Translucent Substratum theme (shameless plug lol)
some have modules for android 8.0 ?
Archangel said:
I updated the keyboard apk, lib files and script to update with AOSP Keyboard 9.0 for Android Pie. Just flash in Magisk as a regular module and reboot. Credit goes to Raven428 for the original module, thank you! I flashed this on my Pixel 3a and OnePlus 6T and works fine. Make sure you have a good backup prior to just in case. If you want it to be Transparent then consider my Translucent Substratum theme (shameless plug lol)
Click to expand...
Click to collapse
Man, thank you! Is there any way you can make it as a twrp flashable zip? It hangs sometimes via the module & I'd like to see if flashing it directly into the system speeds it up.
Sure, I am out of town right now so when I get back I can slide it into a zip
peestandingup said:
Man, thank you! Is there any way you can make it as a twrp flashable zip? It hangs sometimes via the module & I'd like to see if flashing it directly into the system speeds it up.
Click to expand...
Click to collapse
Archangel said:
I updated the keyboard apk, lib files and script to update with AOSP Keyboard 9.0 for Android Pie. Just flash in Magisk as a regular module and reboot. Credit goes to Raven428 for the original module, thank you! I flashed this on my Pixel 3a and OnePlus 6T and works fine. Make sure you have a good backup prior to just in case. If you want it to be Transparent then consider my Translucent Substratum theme (shameless plug lol)
Click to expand...
Click to collapse
In Lineage OS the swipe function only worked in connection with the Google Apps. I have Google Apps on my phone installet, but the swipe function still doesn't work. I guess this has something to do with customizations?
Is there anything you can do?
Yeah swipe function isnt working for me either, when I get a chance I will troubleshoot it to see if it can be fixed
tiga05 said:
In Lineage OS the swipe function only worked in connection with the Google Apps. I have Google Apps on my phone installet, but the swipe function still doesn't work. I guess this has something to do with customizations?
Is there anything you can do?
Click to expand...
Click to collapse
@Archangel
I did some research about this topic and found out, that you need a specific closed source file.
It's name is : libjni_latinimegoogle.so
It gets installed with the google keyboard. Some pages say you can manually copy it in a specific folder and than it should work.
Had no time to try it out. But will try this later.
Maybe it helps you!
Edit: OK I had the 5 minutes to try it .
It works!
Just take the .so file for example from here ( I took them from the current downloadable opengapps):
https://gitlab.opengapps.org/opengapps/arm64/blob/master/lib64/23/libjni_latinimegoogle.so
And put them into system/lib64.
Maybe you have to restart your smartphone. And then it works! Do you see any possibility to add this to your magisk module?
Here is the new Magisk Module with the .so included let me know if you have any problems flashing it in Magisk
https://www.dropbox.com/s/t83w56bpp616vqh/AOSPKeyBoardV9MagiskModule.zip?dl=0
tiga05 said:
@Archangel
I did some research about this topic and found out, that you need a specific closed source file.
It's name is : libjni_latinimegoogle.so
It gets installed with the google keyboard. Some pages say you can manually copy it in a specific folder and than it should work.
Had no time to try it out. But will try this later.
Maybe it helps you!
Edit: OK I had the 5 minutes to try it .
It works!
Just take the .so file for example from here ( I took them from the current downloadable opengapps):
https://gitlab.opengapps.org/opengapps/arm64/blob/master/lib64/23/libjni_latinimegoogle.so
And put them into system/lib64.
Maybe you have to restart your smartphone. And then it works! Do you see any possibility to add this to your magisk module?
Click to expand...
Click to collapse
@Archangel Sorry to bother, but I seem to have an issue with the Magisk module (and with LatinIME in general). On my Lenovo Vibe K5 on MoKee 8.1.0, LatinIME crashes, even though the libs are installed and with their permissions set. Any help?
Here's a link to the bugreport: https://paste.ubuntu.com/p/JVWDXvBS4B/
EDIT: After I deleted manually the files libjni_latinime.so and the folder LatinIME inside /system/lib64/ and /system/app/ respectively, a reinstall of the module got the app finally working.

Getting the Thermal Camera Working on the Blackview BV9800 Pro under a Custom ROM

The Blackview BV9800 Pro is a relatively rare device, and has no support from LineageOS or any other popular ROM project I can find. This is kind of a shame, because it's a pretty cool device - in particular, it has an integrated thermal camera, and is also just a nice ruggedized phone at a surprisingly low price. The bootloader is unlockable out of the box without any need for an unlock code or other nonsense from the vendor, which is also a big bonus.
Being a Project Treble-compatible device, it's possible to run unofficial GSI builds of LineageOS on it, such as these, which are replacement images to flash over /system. These work well with the majority of the BV9800 Pro's functions (wireless, visible-light cameras, sensors, etc.), but getting the thermal camera to work requires a little bit more work. I have done this successfully, so I wanted to share what I did in case anyone else finds themselves in the same situation.
I have only tested these procedures on a BV9800 Pro (EEA version), running LineageOS 16 (Android 9) from the link above. Other versions of Android may work, but I do not know whether they do or not, and decided to stay with Android 9, since this is what the vendor ships on the device. Your results may vary if you decide to try a newer version.
The factory MyFLIR app for the device can be found at this location in the stock ROM:
Code:
/system/app/myflir-bv2.3.6-release-signed/myflir-bv2.3.6-release-signed.apk
However, if you try to just install it like a normal app package under LineageOS, it crashes on startup without providing any useful information. The system logs reveal that it crashes because it's trying to communicate with a system service that manages the thermal camera, but this service isn't installed. Fortunately, you can install it by just copying a few files from the factory ROM over to the LineageOS system. The files in question are located at these paths in the factory ROM:
Code:
/system/bin/leptonServer
/system/etc/init/LeptonCameraServer.rc
/system/lib64/libleptoncamera.so
If you copy these files to the same paths in the LineageOS /system tree, then the Lepton camera server backend, which is required for the MyFLIR app to function, will be installed and configured to start at boot.
SELinux seems to prevent the app from connecting to the Lepton server on my device, so I had to disable it by running
Code:
setenforce 0
in a root shell on the device. I didn't install it as a system app, though, which could be part of the problem. I don't know much about how SELinux actually works, but I feel comfortable enough disabling it. If you don't want to disable it, you can probably find information about how to make it allow the FLIR app to work, but I'm afraid I can't be of much help there.
You can find a copy of the stock BV9800 Pro ROM here on the Blackview forum.
If you want to root the stock ROM to allow you to inspect /system, this thread explains how. If you prefer, you can instead extract the ROM zip archive on a computer, decompress the included system.img with simg2img, and mount it to inspect the contents directly, which is what I did. Modifying /system on a running device can be difficult these days, so it will probably work best to mount up the GSI image the same way and copy the files into it, rather than try to edit it in-place on a running device.
I hope this information helps. The thermal camera is one of the most important (and expensive) features of the BV9800 Pro, and getting it working was pretty much the deciding factor for me as to whether I would keep the (kind of bad) factory ROM, or get to enjoy all the perks of LineageOS. I'm not really knowledgeable enough to write a complete and trustworthy guide to installing LineageOS, though, so if you're just getting started, you'll want to find a more detailed tutorial about how installing custom ROMs (especially GSI/Treble builds) works.
That's a cool rugged phone. Stock it's running on Pie... personally I leave it be and optimize it as best I could to get maximum battery life.
I was looking at these... FLIR, hell yes.
I was following your guide, I'm using my Blackview 9800pro without GApps (but with MicroG 0.2.18.204714) on LineageOS 17.1-20210321. When opening the MyFlir camera or gallery app, it asks me for all the relevant permissions on the first start and then promptly crashes every time I open it. I tried both as a system and a regular app, with and without selinux. In the error below, it complains about not finding the right function in libvndksupport.so. This library is much smaller in LineageOS than it is shipped in the Stock ROM from Blackview. Replacing the LineageOS shared object file with the one from Blackview causes my phone not to boot. Is there something I am missing that causes my instance of the app (I tried both 2.3.6 and 2.3.8) to crash?
Code:
04-28 00:27:34.047 1383 5788 I ActivityTaskManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.flir.tiger/com.flir.monarch.ui.MainActivity bnds=[27,996][232,1321]} from uid 10121
04-28 00:27:34.057 783 804 I [email protected]: powerHintAsync hint:8, data:1
04-28 00:27:34.061 783 803 I libPowerHal: 8: legacy set freq: 1989000 -1 2106000 -1
04-28 00:27:34.076 1383 1420 E system_server: Invalid ID 0x00000000.
04-28 00:27:34.077 1383 1419 W ActivityManager: Stopping service due to app idle: u0a216 -10s135ms com.flir.tiger/com.flir.monarch.media.MediaScanner
04-28 00:27:34.084 1008 1008 D Zygote : Forked child process 7648
04-28 00:27:34.087 1383 1426 I ActivityManager: Start proc 7648:com.flir.tiger/u0a216 for pre-top-activity {com.flir.tiger/com.flir.monarch.ui.MainActivity}
04-28 00:27:34.147 1579 1579 D ImageWallpaper: wallpaper visibility changes to: false
04-28 00:27:34.161 762 864 I hwcomposer: [DEV] 1024 0 0 0
04-28 00:27:34.162 762 864 I hwcomposer: [DEV] 0 741 0 0
04-28 00:27:34.162 762 864 I hwcomposer: [DEV] 0 0 470 0
04-28 00:27:34.162 762 864 I hwcomposer: [DEV] 0 0 0 1024
04-28 00:27:34.173 7648 7648 D FirebaseApp: com.google.firebase.auth.FirebaseAuth is not linked. Skipping initialization.
04-28 00:27:34.174 7648 7648 D FirebaseApp: com.google.firebase.crash.FirebaseCrash is not linked. Skipping initialization.
04-28 00:27:34.174 7648 7648 I FirebaseInitProvider: FirebaseApp initialization successful
04-28 00:27:34.177 762 864 I hwcomposer: [DEV] [DEV] (Send identity matrix)
04-28 00:27:34.187 7648 7673 I FA : App measurement is starting up, version: 15300
04-28 00:27:34.187 7648 7673 I FA : To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
04-28 00:27:34.187 7648 7673 I FA : To enable faster debug mode event logging run:
04-28 00:27:34.187 7648 7673 I FA : adb shell setprop debug.firebase.analytics.app com.flir.tiger
04-28 00:27:34.196 762 864 I hwcomposer: [DEV] 1024 0 0 0
04-28 00:27:34.196 762 864 I hwcomposer: [DEV] 0 741 0 0
04-28 00:27:34.196 762 864 I hwcomposer: [DEV] 0 0 470 0
04-28 00:27:34.196 762 864 I hwcomposer: [DEV] 0 0 0 1024
04-28 00:27:34.200 7648 7648 I CrashlyticsCore: Initializing Crashlytics 2.6.8.32
04-28 00:27:34.207 7648 7686 W ContextImpl: Failed to ensure /data/user/0/com.google.android.gms/shared_prefs: mkdir failed: EACCES (Permission denied)
04-28 00:27:34.208 7648 7648 I CrashlyticsInitProvider: CrashlyticsInitProvider initialization successful
04-28 00:27:34.212 762 864 I hwcomposer: [DEV] [DEV] (Send identity matrix)
04-28 00:27:34.220 2428 2428 D GmsMeasureBrokerSvc: onBind: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms }
04-28 00:27:34.222 3179 3179 D GmsGcmRegister: onBind: Intent { act=com.google.android.c2dm.intent.REGISTER pkg=com.google.android.gms }
04-28 00:27:34.223 1024 1024 I netd : firewallSetUidRule(2, 10161, 1) <2.63ms>
04-28 00:27:34.227 1024 1024 I netd : firewallSetUidRule(2, 10160, 1) <1.74ms>
04-28 00:27:34.230 1024 1024 I netd : firewallSetUidRule(2, 10157, 1) <2.14ms>
04-28 00:27:34.233 1024 1024 I netd : firewallSetUidRule(2, 10151, 1) <1.85ms>
04-28 00:27:34.236 7648 7648 I ashmem : memfd: device VNDK version (28) is < Q so using ashmem.
04-28 00:27:34.277 7648 7648 D AndroidRuntime: Shutting down VM
04-28 00:27:34.277 7648 7648 E AndroidRuntime: FATAL EXCEPTION: main
04-28 00:27:34.277 7648 7648 E AndroidRuntime: Process: com.flir.tiger, PID: 7648
04-28 00:27:34.277 7648 7648 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "android_get_exported_namespace" referenced by "/data/app/com.flir.tiger-EcVVz9vk2XWvVymOtKJxOQ==/lib/arm64/libvndksupport.so"...
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at java.lang.Runtime.loadLibrary0(Runtime.java:1071)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at java.lang.Runtime.loadLibrary0(Runtime.java:1007)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at java.lang.System.loadLibrary(System.java:1667)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.flir.flirone.sdk.FlirOne.<clinit>(FlirOne.java:59)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.flir.flirone.sdk.FlirOne.registerDeviceCallback(FlirOne.java:341)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.flir.monarch.app.ForegroundApplication.onActivityStarted(ForegroundApplication.java:88)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.Application.dispatchActivityStarted(Application.java:406)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.Activity.dispatchActivityStarted(Activity.java:1238)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.Activity.onStart(Activity.java:1723)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:614)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.flir.monarch.ui.MainActivity.onStart(MainActivity.java:79)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1432)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.Activity.performStart(Activity.java:7847)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3294)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:107)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7356)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
04-28 00:27:34.277 7648 7648 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:940)
04-28 00:27:35.334 1383 5501 D AlarmManagerService: Kernel timezone updated to -120 minutes west of GMT
04-28 00:27:35.348 1383 6143 D AlarmManagerService: Kernel timezone updated to -120 minutes west of GMT
04-28 00:27:35.709 1090 1371 I 1090 1371 [sunwave-hal] : (711) 'healthMonitoringThread' enter.
04-28 00:27:35.710 1090 1371 I 1090 1371 [sunwave-client] : (90) ---8<---- TA LOG BEGINS ---------
04-28 00:27:35.710 1090 1371 I 1090 1371 [sunwave-ta-core] : (2869) 'sf_get_device_state' state:0008
04-28 00:27:35.710 1090 1371 I 1090 1371 [sunwave-client] : (107) --------- TA LOG FINISH ---->8---
Thanks for the info for the flir Camera,
It works fine with lineage OS 16 !
I want to add the info I got while doing it:
It does not work with all version of Andy Custom Lineage OS: I could not make it works with this one: lineage-16.0-20191017-UNOFFICIAL-treble_arm64_bvN.img.xz the lepton server had a seg fault.
I try with a lineage OS 18 , the lepton server worked but the application failed, I will look into it one day... maybe
I root my phone with magisk
I used a script to bypass SElinux and start the server when i want ( because i don't know if it wise to always have SElinux in permissive mode)
tylab said:
Thanks for the info for the flir Camera,
It works fine with lineage OS 16 !
I want to add the info I got while doing it:
It does not work with all version of Andy Custom Lineage OS: I could not make it works with this one: lineage-16.0-20191017-UNOFFICIAL-treble_arm64_bvN.img.xz the lepton server had a seg fault.
I try with a lineage OS 18 , the lepton server worked but the application failed, I will look into it one day... maybe
I root my phone with magisk
I used a script to bypass SElinux and start the server when i want ( because i don't know if it wise to always have SElinux in permissive mode)
Click to expand...
Click to collapse
thank u for the additional info!,so which version of lineage os 16 worked for u? iam on lineage-16.0-20191017-UNOFFICIAL-treble_arm64_bvN.img.xz and tried the author's steps but didn't work for me, also it'd be nice if u share with us the script u use to bybass selinux,thanks.
I want to report back some of my own success in regards to this thread. I have the camera working, but it's not a perfect solution and was wondering if you guys could assist me in checking what I could have possibly missed. I'm running it on the most current Lineage OS 18.1; I've compiled a version using the Treble ROM lineage-18.1-20210512-UNOFFICIAL-treble_arm64_bvS with Magisk as root (I also added MindTheGapps into it after some workarounds with the mounts, and had to register my device as an "unsupported device").
I followed the OP's guide to the T, and still couldn't get the app to even open. The logs revealed it was trying to call leptonServer, nulling out after five tries, and then crashing. Narrowed this down to being an issue with the /bin/leptonServer file itself being set as -rwx-r--r--, and changing it to -rwxr-x-r-x got the app to boot up. The only problem is, for the camera to actually start, I have to open a terminal session and start leptonServer from there, and I assume this has something to do with the SELinux policies in place. I've fought half the battle and got a version of sepolicy-inject set up to run (using the following policy: allow untrusted_app_27 default_android_service:service_manager { find }; (sepolicy-inject -s untrusted_app_27 -t default_android_service -c service_manager -p find (if this doesn't work for you, try doing logcat ServiceManager:V SELinux:V *:S to find the relevant SELinux policies that you need to apply, and follow the formulas))), but I figure this is still erroring out somewhere, since, after a restart, the only way I can get it working again is to go and disable SELinux using setenforce to 0 and then starting the server again using some sort of terminal. I also installed the MyFlir app as a system app.
I believe that part of the issue might be that I haven't properly added the SELinux policy, but I'm not entirely positive how I would go about testing this (I've more or less just gotten into the ROM building scene last week, but feel I have somewhat of an edge being a software developer for a living). I think if I boot into recovery I can grab the sepolicy file, but I'm not sure what else to do with it at this point.
The error I get when it's not running, aside from the PID is pretty consistent too:
05-31 19:19:06.814 372 372 E SELinux : avc: denied { find } for pid=20308 uid=10195 name=LeptonCameraService scontext=u:r:untrusted_app_27:s0:c195,c256,c512,c768 tcontext=ubject_r:default_android_service:s0 tclass=service_manager permissive=0
Hopefully, this helps someone to find the right answers before I can; I know I'll keep tinkering with it until I find the solution (I'm also attempting to overcome the CTSProfile/Basic failure in Magisk, which I plan to make a guide if I can find an answer).
I get the same error as @&00&V5yt$r2$E!n1IDUiJ9bF on Lineage18.1 - treble_arm64_bvS-userdebug
04-28 00:27:34.277 7648 7648 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "android_get_exported_namespace" referenced by "/data/app/com.flir.tiger-EcVVz9vk2XWvVymOtKJxOQ==/lib/arm64/libvndksupport.so"...
My leptonServer is working correctly and service runs from the start so it I feel this is related to the /system/app/myflir-bv2.3.6-release-signed.
Are you guys using a different version of the app?
Flir said:
I get the same error as @&00&V5yt$r2$E!n1IDUiJ9bF on Lineage18.1 - treble_arm64_bvS-userdebug
04-28 00:27:34.277 7648 7648 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "android_get_exported_namespace" referenced by "/data/app/com.flir.tiger-EcVVz9vk2XWvVymOtKJxOQ==/lib/arm64/libvndksupport.so"...
My leptonServer is working correctly and service runs from the start so it I feel this is related to the /system/app/myflir-bv2.3.6-release-signed.
Are you guys using a different version of the app?
Click to expand...
Click to collapse
I also used myflir-bv2.3.6-release-signed, pulled straight from the currently available 9.0 ROM.
For that specifically, if you are looking at the most recent ROM build available from Blackview, in the directory /system/system/app/myflir-bv2.3.6-release-signed, there is both the APK and a lib folder. I'd copy the lib folder over to your phone in that same directory; I think you're missing the dependencies from there.
If you already have those libaries in there, try the read/write settings on the folder too.
Hi bv9800 pro customers! Anyone tryed the magisk module in the thread https://forum.xda-developers.com/t/blackview-bv9900pro-magisk-modules.4331187/
to get flir worked on linage?
ilich79 said:
Hi bv9800 pro customers! Anyone tryed the magisk module in the thread https://forum.xda-developers.com/t/blackview-bv9900pro-magisk-modules.4331187/
to get flir worked on linage?
Click to expand...
Click to collapse
Hi ilich79
I tryed the magisk module for BV9900pro.
I have installed it manualy to improve my understanding.
First, selinux block as always :
E/SELinux ( 338): avc: denied { find } for pid=18411 uid=10175 name=LeptonCameraService scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:default_android_service:s0 tclass=service_manager permissive=0
After enforce selinux and relanch the leptonServer.
Application launch completly but the camera send only the first image and block after that
So, i replace the leptonServer by the old one and retry.
Finally it works fully.
I someone know how to correctly set the selinux policy for this app ? I will be graceful
May be this can help?
[MODULE] SELinux Mode Inverter (Advanced SELinux Mode Changer)
It Is Now A Part Of The Main Module Of MultiFunctions & Its Thread https://forum.xda-developers.com/apps/magisk/module-multifunctions-bootloop-t3933386. Introduction: Simple Module To Invert The Default Android SELinux Mode During Startup ([From...
forum.xda-developers.com
Flir said:
I get the same error as @&00&V5yt$r2$E!n1IDUiJ9bF on Lineage18.1 - treble_arm64_bvS-userdebug
04-28 00:27:34.277 7648 7648 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "android_get_exported_namespace" referenced by "/data/app/com.flir.tiger-EcVVz9vk2XWvVymOtKJxOQ==/lib/arm64/libvndksupport.so"...
My leptonServer is working correctly and service runs from the start so it I feel this is related to the /system/app/myflir-bv2.3.6-release-signed.
Are you guys using a different version of the app?
Click to expand...
Click to collapse
I get the same error, @QuentinX5 : Did you use a different version? Would be nice to have a Lineage upgrade.
Regarding the problem with the MyFlir camera app: I had the same problem (unable to read camera files). I looked everywhere. I mean, everywhere trying to find an answer. There's also a video on youtube with comments suggesting flashing the APD.BIN file (I did not try). I even translated different language websites. Finally, I contacted the BV customer support and their reply was the classic (clear the app cache), which doesn't work at all and not just for me. I tried to get the APK file from the image and installing it which didn't work either.
Here's the simple magic solution that kept me trying for a week, and no one wrote it anywhere:
There's a folder named (com.flir.tiger) inside the Android folder in the phone storage with the contents:
com.flir.tiger\files\iron
com.flir.tiger\files\CameraFiles\system\calib.rsc
com.flir.tiger\files\CameraFiles\system\maps\ds_we_ap_fi_le_LCFMap.fff
Just copy the folder from another phone and paste it on your phone, and that's it!
thelaseman said:
Regarding the problem with the MyFlir camera app: I had the same problem (unable to read camera files). I looked everywhere. I mean, everywhere trying to find an answer. There's also a video on youtube with comments suggesting flashing the APD.BIN file (I did not try). I even translated different language websites. Finally, I contacted the BV customer support and their reply was the classic (clear the app cache), which doesn't work at all and not just for me. I tried to get the APK file from the image and installing it which didn't work either.
Here's the simple magic solution that kept me trying for a week, and no one wrote it anywhere:
There's a folder named (com.flir.tiger) inside the Android folder in the phone storage with the contents:
com.flir.tiger\files\iron
com.flir.tiger\files\CameraFiles\system\calib.rsc
com.flir.tiger\files\CameraFiles\system\maps\ds_we_ap_fi_le_LCFMap.fff
Just copy the folder from another phone and paste it on your phone, and that's it!
Click to expand...
Click to collapse
Hi do you think your solution works for all lineageos releases? If I change the stock rom I was thinking on putting release 19.1
thelaseman said:
Regarding the problem with the MyFlir camera app: I had the same problem (unable to read camera files). I looked everywhere. I mean, everywhere trying to find an answer. There's also a video on youtube with comments suggesting flashing the APD.BIN file (I did not try). I even translated different language websites. Finally, I contacted the BV customer support and their reply was the classic (clear the app cache), which doesn't work at all and not just for me. I tried to get the APK file from the image and installing it which didn't work either.
Here's the simple magic solution that kept me trying for a week, and no one wrote it anywhere:
There's a folder named (com.flir.tiger) inside the Android folder in the phone storage with the contents:
com.flir.tiger\files\iron
com.flir.tiger\files\CameraFiles\system\calib.rsc
com.flir.tiger\files\CameraFiles\system\maps\ds_we_ap_fi_le_LCFMap.fff
Just copy the folder from another phone and paste it on your phone, and that's it!
Click to expand...
Click to collapse
Hi, I'm trying to get the flir camera working on lineage 19.1 can @thelaseman gime me the file you write about? beacause I don't have another phone to copy from.
Thanks
Max
max74926 said:
Hi, I'm trying to get the flir camera working on lineage 19.1 can @thelaseman gime me the file you write about? beacause I don't have another phone to copy from.
Thanks
Max
Click to expand...
Click to collapse
If you are still looking for it I might be able to extract these files for you.
@thelaseman @QuentinX5
Is anyone still using a BV9800 Pro with a Lineage ROM? What version are you on, what specific build did you install, did you encounter any specific issues, were they fixable and how?
Not asking for a full guide (wouldn't mind of course ) but before I start messing with what is currently my daily driver I'd like to know if anyone else was successful with a certain version. Particularly interested if any newer versions have also ended up working with the FLIR-camera.
Hi @dj__jg,
I use the attached files for lineage 19.1 GSI (https://forum.xda-developers.com/t/gsi-12-lineageos-19-x-gsi-a64b-64b.4358041/).
My camera calib is wrong (the thermal camera is upside down.) so I don't push the calib file here, if you have a good one, i'm interested.
I don't have fixed the selinux error for the moment, so just disable it went you launch the '/system/bin/leptonServer'
I missnamed the attached file, it's for BV9800 pro
I suddenly feel very stupid, I just realised I've gotten confused about my phones model number
I actually have a Blackview ninethousandninehundred pro, not 9800. I either had a brainfart or made a typo as I was searching if anyone had managed to use a recent Lineage ROM on it and accidentally ended up on this thread and didn't notice.
Luckily I didn't upload my calib file etc here, or someone could have gotten very confused. I think I will try to run a GSI build at some point, but when I have some more spare time/don't need this phone every day. The information about the com.flir.tiger folder is still very handy because it is the same on my model, I hope the same tactics will work to get the FLIR working in a GSI build.
(Wrote out the model number in text so other people googling the model number won't end up confused on this thread without even making a typo)
It's my bad i missnamed my file, it's 9800 pro not 9800 (who don't have thermal camera)

Boot loop after updating OnePlus7Pro to Lineage19.1

I updated a friend's OnePlus7 from LineageOS 18.1 to 19.1. The update process executed smoothly with no problems. Upon starting the phone I noticed that the phone would reboot almost immediately after I unplugged the USB cable from the computer. After a couple of reboots the phone would failover to recovery with the Can't load Android system error message with 2 options "Try again" or "Factory data reset". I found that selecting "Try Again" with the USB cable connected I could boot the phone. At first glance, everything seemed to work. I gave my friend her phone back and told her if she has any problems let me know.
Then next day she dropped off the phone and said it wasn't working. By this point, the phone was reset and the phone would still boot loop. I did some searches looking for answer and tried the following to no avail:
- Downgraded the phone to an earlier build of 19.1
- updated the recovery image
- Reapplied the latest build of 19.1 via the in phone upgrade mechanism
Also since the phone was wiped. I was trying to recover the deleted files. I couldn't get this to work either and was wondering if using this method to copy the partition off the phone and work with the exported file system is still viable. I didn't go into too many details here since this is a secondary issue but if any one has a working method to recover files with a linux computer that would be a huge help too.
So some observations about the current status of the phone;
- Latest build of 19.1 is on the phone. It is rooted and has busybox installed.
- Phone will not read SIM and says no sim detected.
- If I try to make a call when the phone is not charging it will reboot
- If I remove the SIM and reinsert when the phone is not charging it will reboot
- Airplane mode doesn't change rebooting behavior
- Don't know if this matters but the phone doesn't show the OEM unlock item in the debug menu and I don't get the unlocked bootloader message when I turn on the phone.
- If any attempt to read use the SIM card when the phone is not plugged in, The phone will reboot and go into a boot loop
Thank you!!
Stu
UPDATE:
I checked the baseband version thinking that it might need to be update and found that the in bootloader the there is no baseband listed. Within lineage the baseband was set to unknown. Then something odd happened the phone started working. I started getting text messages and voicemails I managed to make a couple of test calls as well. Then it all stopped working again. Now I find the cellular service sometime work but would revert to its broken state.. I have not found a trigger for the state change.
I ran adb logcat and found this following crash happen a lot. I believe this is what is causing the reboot:
Code:
12-03 12:29:36.884 4238 4238 E AndroidRuntime: FATAL EXCEPTION: main
12-03 12:29:36.884 4238 4238 E AndroidRuntime: Process: com.android.phone, PID: 4238
12-03 12:29:36.884 4238 4238 E AndroidRuntime: java.lang.RuntimeException: slotId 0 mapped to multiple phoneIds
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at com.android.internal.telephony.uicc.UiccController.onGetSlotStatusDone(UiccController.java:1083)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at com.android.internal.telephony.uicc.UiccController.handleMessage(UiccController.java:519)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:201)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at android.os.Looper.loop(Looper.java:288)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7870)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
12-03 12:29:36.884 4238 4238 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

Phone restarts after swiping notification:

Hey!
Due to some reason which is unknown to me my phone restarts after I swap WhatsApp application. Left or right it doesn't matter. This happens only with whatsapp. I'm providing logs.
02-16 11:11:01.419 1473 1473 E AndroidRuntime: at com.android.server.notification.Notifi cation RecordLogger$NotificationCanc elledEvent.fromCancel Reason(Notific ation RecordLogger.java:226)
02-16 11:11:01.419 1473 1473 E
AndroidRuntime: at
E com.android.server.notification.Notifi cation RecordLogger.log NotificationCa ncelled(Notification RecordLogger.jav a:86)
What could be the solution to this problem?
Thank you!

Categories

Resources