MobyDroid icon indicating copy to clipboard operation
MobyDroid copied to clipboard

Error when attempting to install a file.

Open Gonzako opened this issue 1 year ago • 0 comments

Hi, When testing the software I pulled an apk from my test phone which worked flawlessly. But then proceding to try and install the same apk it gives the following error message on a windows machine:

Error: Unable to open file: /data/local/tmp/modydroid/Facebook

com.facebook.katana_Verstub_94.2.0 _. apkError: Can't open file: /data/local/tmp/modydroid/Facebook_com.facebook.katana_Verstub_94.2.0 _. apkException occurred while executing 'install':java.lang.IllegalArgumentException: Error: Can't open file: /data/local/tmp/modydroid/Facebook_com.facebook.katana_Verstub_94.2.0 _. apkat com.android.server.pm.PackageManagerShellCommand.setParams Size(PackageManagerShellCommand.java:621Jat com.android.server.pm.PackageManager ShellCommand.doRunInstall(PackageManagerShellCommand.java:1472)at com.android.server.pm.PackageManagerShellCommand.runlnstallPackageManager ShellCommand.java:1438)at com.android.server.pm.PackageManager ShellCommand.onCommand(PackageManager ShellCommand.java:234)at com.android.modules.utils.Basic ShellCommandHandler.exec(Basic ShellCommandHandler.java:97Jat android.os. ShellCommand.exec(ShellCommand.java:38)at com.android.server.pm.PackageManager ServiceSIPackageManagerlmpl.onShellCommand(Packa...

Here's a screenshot of it

Best regards, Gonzako

Gonzako avatar Feb 26 '25 09:02 Gonzako

Image Image

Knowbie-dwg avatar Sep 12 '25 07:09 Knowbie-dwg

已修复,请更新awtk到540a58c再试试,谢谢

KunQAQrz avatar Sep 15 '25 09:09 KunQAQrz

你好,kb_int能正常使用的,但是在kb assic和default按键均无法使用 ,这两个按键需要将所有的按键都设置为grab_keys吗,我目前只设置了一个

Knowbie-dwg avatar Sep 16 '25 02:09 Knowbie-dwg

Image

Knowbie-dwg avatar Sep 16 '25 02:09 Knowbie-dwg

awtk中有关于5key的例程demo_5key_app可以参考一下,关于上面的问题,awtk里的kb_default_5key.xml可以解答

KunQAQrz avatar Sep 16 '25 02:09 KunQAQrz

awtk中有关于5key的例程demo_5key_app可以参考一下,关于上面的问题,awtk里的kb_default_5key.xml可以解答

你好,有另外一个问题想请教, 我手动使用main_loop_post_key_event(main_loop(), TRUE, TK_KEY_LEFT);的方式去post事件,在没有输入需求的时候,他可以正常上下左右确定,当有输入需求,例如edit或者spinbox时候,他在打开键盘后,此时无法再控制上下左右确认

Image

Knowbie-dwg avatar Sep 16 '25 06:09 Knowbie-dwg

#include "awtk.h" #include "common/navigator.h"

#ifndef APP_SYSTEM_BAR #define APP_SYSTEM_BAR "" #endif /APP_SYSTEM_BAR/

#ifndef APP_BOTTOM_SYSTEM_BAR #define APP_BOTTOM_SYSTEM_BAR "" #endif /APP_BOTTOM_SYSTEM_BAR/

#ifndef APP_START_PAGE #define APP_START_PAGE "home_page" #endif /APP_START_PAGE/

#define WITH_STATE_ACTIVATED 1 /**

  • 注册自定义控件 */ static ret_t custom_widgets_register(void) {

return RET_OK; }

/**

  • 当程序初始化完成时调用,全局只触发一次。 */ static ret_t application_on_launch(void) {

return RET_OK; }

/**

  • 当程序退出时调用,全局只触发一次。 */ static ret_t application_on_exit(void) {

return RET_OK; }

// 处理全局按键按下事件 ret_t on_global_key_down(void* ctx, event_t* e) { char ch[50] = {0}; key_event_t* evt = key_event_cast(e); // 转换为按键事件 const key_type_value_t* ktv = keys_type_find_by_value(evt->key);

     if (0== strcmp( ktv->name, "XLEFT"))
 {
     	main_loop_post_key_event(main_loop(), TRUE, TK_KEY_LEFT);
      //main_loop_post_key_event(main_loop(), FALSE, TK_KEY_LEFT);
 }else if (0== strcmp( ktv->name, "XRIGHT"))
 {
      	main_loop_post_key_event(main_loop(), TRUE, TK_KEY_RIGHT);
       // main_loop_post_key_event(main_loop(), FALSE, TK_KEY_RIGHT);
 }
 else if (0== strcmp( ktv->name, "XUP"))
 {
      	main_loop_post_key_event(main_loop(), TRUE, TK_KEY_UP);
       // main_loop_post_key_event(main_loop(), FALSE, TK_KEY_UP);
 }else if (0== strcmp( ktv->name, "XDOWN"))
 {
      	main_loop_post_key_event(main_loop(), TRUE, TK_KEY_DOWN);
       // main_loop_post_key_event(main_loop(), FALSE, TK_KEY_DOWN);
 }else if (0== strcmp( ktv->name, "XENTER"))
 {
      	main_loop_post_key_event(main_loop(), TRUE, TK_KEY_RETURN);
        //main_loop_post_key_event(main_loop(), FALSE, TK_KEY_RETURN);
 }
return RET_OK;

}

// 处理全局按键抬起事件 ret_t on_global_key_up(void* ctx, event_t* e) { char ch[50] = {0}; key_event_t* evt = key_event_cast(e); // 转换为按键事件

const key_type_value_t* ktv = keys_type_find_by_value(evt->key);

 if (0== strcmp( ktv->name, "XLEFT"))
 {
     	main_loop_post_key_event(main_loop(), FALSE, TK_KEY_LEFT);
 }else if (0== strcmp( ktv->name, "XRIGHT"))
 {
      	main_loop_post_key_event(main_loop(), FALSE, TK_KEY_RIGHT);
 }
 else if (0== strcmp( ktv->name, "XUP"))
 {
      	main_loop_post_key_event(main_loop(), FALSE, TK_KEY_UP);
 }else if (0== strcmp( ktv->name, "XDOWN"))
 {
      	main_loop_post_key_event(main_loop(), FALSE, TK_KEY_DOWN);
 }else if (0== strcmp( ktv->name, "XENTER"))
 {
      	main_loop_post_key_event(main_loop(), FALSE, TK_KEY_KP_ENTER);
 }
return RET_OK;

}

/**

  • 初始化程序 */ ret_t application_init(void) {

    printf("app time: %s %s\n", DATE, TIME);

system_info_set_keyboard_type(system_info(), KEYBOARD_5KEYS);

printf("set log level debug\n");

log_set_log_level(LOG_LEVEL_DEBUG);

navigator_global_widget_on(EVT_KEY_DOWN, on_global_key_down, NULL); navigator_global_widget_on(EVT_KEY_UP, on_global_key_up, NULL);

custom_widgets_register(); application_on_launch();

if (strlen(APP_SYSTEM_BAR) > 0) { navigator_to(APP_SYSTEM_BAR); }

if (strlen(APP_BOTTOM_SYSTEM_BAR) > 0) { navigator_to(APP_BOTTOM_SYSTEM_BAR); }

return navigator_to(APP_START_PAGE); }

/**

  • 退出程序 */ ret_t application_exit(void) { application_on_exit(); log_debug("application_exit\n");

return RET_OK; }

Knowbie-dwg avatar Sep 16 '25 06:09 Knowbie-dwg

请确认一下编译脚本中CCFLAGS是否包含了WITH_STATE_ACTIVATED system_info_set_keyboard_type(system_info(), KEYBOARD_5KEYS)是否返回RET_OK

KunQAQrz avatar Sep 16 '25 07:09 KunQAQrz

请确认一下编译脚本中CCFLAGS是否包含了WITH_STATE_ACTIVATED system_info_set_keyboard_type(system_info(), KEYBOARD_5KEYS)是否返回RET_OK

你好编译脚本已包含 ,已确认返回OK 且在非编辑状态,我是可以通过按键控制上下左右移动的,只有进入编辑状态,才会出现这个问题

Knowbie-dwg avatar Sep 16 '25 07:09 Knowbie-dwg

Image Image

Knowbie-dwg avatar Sep 16 '25 07:09 Knowbie-dwg

我试过demo_5key是正常的,enter键进入mledit激活状态,之后弹出软键盘,此时上下左右用于移动键盘上的焦点,enter键用于点击键盘上焦点停留的控件,关闭软键盘后,上下左右用于移动mledit的光标位置,enter键退出mledit激活状态

KunQAQrz avatar Sep 16 '25 08:09 KunQAQrz

我试过demo_5key是正常的,enter键进入mledit激活状态,之后弹出软键盘,此时上下左右用于移动键盘上的焦点,enter键用于点击键盘上焦点停留的控件,关闭软键盘后,上下左右用于移动mledit的光标位置,enter键退出mledit激活状态

你好,请问你使用的是 main_loop_post_key_event 进行事件分发吗,我不使用main_loop_post_key_event(main_loop(), FALSE, TK_KEY_KP_ENTER);进行事件分发,而是把键盘映射为上下左右确定,他也是可以正常使用的,但是我尝试使用main_loop_post_key_event(main_loop(), FALSE, TK_KEY_KP_ENTER);进行事件分发,则会出现上面这个问题。

Knowbie-dwg avatar Sep 17 '25 02:09 Knowbie-dwg

没有,我只是用demo_5key进行测试的,什么场景下才需要用到这种用法呢? 看你代码只处理了EVT_KEY_UP和EVT_KEY_DOWN,可能要将剩下的EVT_KEY_开头的事件也处理一下

KunQAQrz avatar Sep 17 '25 03:09 KunQAQrz

没有,我只是用demo_5key进行测试的,什么场景下才需要用到这种用法呢? 看你代码只处理了EVT_KEY_UP和EVT_KEY_DOWN,可能要将剩下的EVT_KEY_开头的事件也处理一下

你好,我这个平台有旋转编码器,旋转编码器上报的输入事件只有相对值变化,例如+1表示旋转了1次,-1表示反向旋转了一次,这样的话,旋转编码器是无法映射为左右按键的,所以我准备,当旋转编码器旋转一次,我就使用main_loop_post_key_event 发送一个左或右的事件,来模拟左右按键。

Knowbie-dwg avatar Sep 17 '25 05:09 Knowbie-dwg