Sunday, January 31, 2021

Using 3rd party android store - Your google account was blocked because you don't want to send a proof of ID Card

 

My backup email dedetoke@gmail.com has been blocked by google, because I don't want to send a proof of ID Card nor Credit Card. Please reject any mail from dedetoke@gmail.com.

If your google has been blocked by google due to validation your ID or age or what ever reason, your applications build by google will not be able to used anymore. Don't delete your applications, your applications can be update using 3rd party provider, I will used apkpure.

You need to uninstall Google Play Games, if it is not build in your phone! or disable it!

Install apkpure to replace your google play store:

  1. Go to setting -> security -> allow install from unknown source
  2. Download apkpure from https://apkpure.com/apkpure/com.apkpure.aegon/download
  3. Install apk apkpure

Now you can update your applications (cover the most applications in google play store).

If you want and trust huawei, you can install Huawei Mobile Service to replace google play games.

  1. Download and install latest Huawei App Gallery Apk from https://consumer.huawei.com/en/mobileservices/appgallery/
  2. After that go to Me -> Setting -> Game Services
  3. It will ask you to download and install HMS (huawei mobile service). it is base on open source google mobile service.

Keep using Android without google play games nor google play store until mobian os ready for the most mobile phones

TESTED ON: EVERCOSS GENPRO X PRO S50 Android 7.0

Tuesday, January 5, 2021

Android MTK Bug to remove Android bloatware (mtk-su)

 

There is a bug in MTK Devices that affected to most MTK Handset with Android firmware release before 2020.

You can gain root in MTK Device, using mtk-su https://forum.xda-developers.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/ or https://forum.xda-developers.com/t/rapid-temporary-root-for-hd-8-hd-10.3904595/.

I try to remove bloatware in Genpro X Pro S50 (Android 7.0) i.e. com.android.sc (Android/Trojan.Syringe.AD part of System Application).

I'm sorry I unable to conpile twrp source nor magisk source for Genpro X Pro S50.

Requirement Any PC with any operating system with:

  • working adb
  •  phone/hangset with developer option and USB debugging enable

1. download mtk-su.zip (versi 23 or latest) from https://forum.xda-developers.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/ or https://forum.xda-developers.com/t/rapid-temporary-root-for-hd-8-hd-10.3904595/ and unzip it.

2. push ./arm/mtk-su into /data/local/tmp

$ adb push ./arm/mtk-su /data/local/tmp/
./arm/mtk-su: 1 file pushed, 0 skipped. 78.7 MB/s (60840 bytes in 0.001s)

3 login into handset shell and change permission to execute

$ ./adb shell

EVERCOSS_S50:/ $ cd /data/local/tmp
EVERCOSS_S50:/data/local/tmp $ chmod 755 mtk-su

4. run ./mtk-su

EVERCOSS_S50:/data/local/tmp $ ./mtk-su -v                    
armv7l machine
param1: 0x1000, param2: 0x8040, type: 4
Building symbol table
kallsyms_addresses pa 0x40bc2460
kallsyms_num_syms 54191, addr_count 54191
kallsyms_names pa 0x40bf7330, size 646794
kallsyms_markers pa 0x40c951c0
kallsyms_token_table pa 0x40c95510
kallsyms_token_index pa 0x40c95890
Patching credentials
Parsing current_is_single_threaded
c0362760: MOVW R0, #0x8d50
c0362764: MOVT R0, #0xc102
Possible list_head tasks at offset 0x290
comm swapper/0 at offset 0x400
Found own task_struct at node 1
cred VA: 0xc9dbe000
init_task VA: 0xc1028d50
Parsing avc_denied
c0aeca70: MOVW R12, #0x1278
c0aeca74: MOVT R12, #0xc113
selinux_enforcing VA: 0xc1131278
Setting selinux_enforcing
Switched selinux to permissive
starting /system/bin/sh
UID: 0  cap: 3fffffffff  selinux: permissive

5. try to remove com.android.sc

EVERCOSS_S50:/data/local/tmp # pm uninstall -k --user 0 com.android.sc
Success

NOTE:

  1. This method can not remove com.android.sc permanenly.
  2. adb push must be place at directory /data/local/tmp !
  3. # means you are in root mode.
  4. after you restart your device, com.android.sc still active!

FOR EDUCATION PURPOSE ONLY

  1. source code com.android.sc Syringe.AD https://garasiku.my.id/android_malware_source/com.android.sc-1.3.3-1033_source_from_JADX.zip
  2. source code "App Settings" droped by com.android.sc https://garasiku.my.id/android_malware_source/com.app.settings.amtapp-2.66-266_source_from_JADX.zip
  3. source code com.viysr.wkcx droped by com.android.sc https://garasiku.my.id/android_malware_source/com.viysr.wkcx-1.0-1_source_from_JADX.zip

Wednesday, November 11, 2020

odoo 14: point of sale show qty_available

 

edit /odoo/addons/point_of_sale/static/src/xml/Screens/ProductScreen/ProductItem.xml line 9 as below:

            <div class="product-img">
                <img t-att-src="imageUrl" t-att-alt="props.product.display_name" />

                <span class="qty_available">
                    <t t-esc="props.product.qty_available" />
                </span>

                <span class="price-tag">
                    <t t-esc="price" />
                </span>

            </div>

edit /odoo/addons/point_of_sale/static/src/css/pos.css add at line about 1202

.pos .product .qty_available {
    position: absolute;
    top: 2px;
    left: 2px;
    vertical-align: top;
    color: white;
    line-height: 13px;
    background: #7f82ac;
    padding: 2px 5px;
    border-radius: 2px;
}

Tuesday, November 10, 2020

odoo 14: point of sale filter pos with on hand quantity

 

we only want to show product with on hand quantity

edit /odoo/addons/point_of_sale/static/src/js/models.js

start at line 413, edit line 419 var domain
        model:  'product.product',
        fields: ['display_name', 'lst_price', 'standard_price', 'categ_id', 'pos_categ_id', 'taxes_id',
                 'barcode', 'default_code', 'to_weight', 'uom_id', 'description_sale', 'description',
                 'product_tmpl_id','tracking', 'write_date', 'available_in_pos', 'attribute_line_ids'],
        order:  _.map(['sequence','default_code','name'], function (name) { return {name: name}; }),
        domain: function(self){
            var domain = ['&', '&', '&', ['sale_ok','=',true],['available_in_pos','=',true],'|',['company_id','=',self.config.company_id[0]],['company_id','=',false], ['qty_available', '>', 0]]; // edit here

add '&' and ['qty_available', '>', 0] like above

reference:

https://www.odoo.com/forum/help-1/question/automatically-remove-products-from-pos-when-products-are-out-of-stock-in-v8-0-123229

Friday, October 23, 2020

Odoo14: POS import products with category

Inventory Product Category

Create product category to import

For example my csv file

"External ID"    "Name"    "Parent Category/External ID"
"cat_besi_kayu"    "Cat Besi / Kayu"    "product.product_category_all"
"cat_besi_kayu_junior"    "Cat Besi / Kayu Junior"    "cat_besi_kayu"

Note:

  • first line is header
  • tab separator and "" string delimiter
  • product.product_category_all is build in root for all categories.

From Inventory -> Configuration -> Product Categories -> Favorites -> Import records, load your category csv file to import. Test it first before real import.

POS Product Category

Create POS product category to import

For example my csv file

"External ID"    "Category Name"    "Parent Category/External ID"
"all"    "All"    ""
"cat_besi_kayu"    "Cat Besi / Kayu"    "all"
"cat_besi_kayu_junior"    "Cat Besi / Kayu Junior"    "cat_besi_kayu"

Note:

  • first line is header
  • tab separator and "" string delimiter
  • product.product_category_all is build in root for all categories.

From Point of Sale -> Configuration -> Products -> POS Product Categories -> Favorites -> Import records, load your category csv file to import. Test it first before real import.

Product

Create products to import

For example my csv file

"ID";"Name";"Sales Price";"Cost";"Quantity On Hand";"Available in POS";"Can be Purchased";"Can be Sold";"Customer Taxes/Amount";"Description";"Product Category / External ID";"Product Type";"Point of Sale Category/Parent Category"
"Junior_66_NP657";"Junior 66 NP657";"80000";"75000";"0";"1";"1";"1";"0";"Septia Brown* Junior 66 Cat Besi/Kayu *0.2L 0.94L 3.785L 20L TC";"cat_besi_kayu_junior";"Storable Product";"cat_besi_kayu_junior"

Note:

  • first line is header
  • ; separator and "" string delimiter
  • cat_besi_kayu_junior is external ID from product category csv file.

From Inventory -> Configuration -> Products -> Products -> Favorites -> Import records, load your product csv file to import. Test it first before real import.