DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: cetacean66
今日帖子: 16
在线用户: 10
导航: 论坛 -> 移动应用开发 斑竹:flyers,iamdream  
作者:
男 na45535 (na45535) ▲▲▲▲▲ -
注册会员
2020/9/2 23:30:40
标题:
Android 11 Beta版本,Delphi 10.3.3编辑的App出现闪退。 浏览:3277
加入我的收藏
楼主: 经过测试,在最新的Android 11 Beta版本中,Delphi 10.3.3(包括)和旧版本,编辑的apk出现闪退,新建一个空白应用,都会出现闪退,导致之前旧版本编辑的App无法在最新的安卓11运行。经过测试 10.4 在安卓11可以正常运行,有一些旧应用不适合在10.4版本编辑,所以请问有没有朋友遇到此问题,探讨解决办法。
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2020/9/3 11:44:10
1楼: 估计就是Delphi10.4才开始支持Android 64bit。
Android11以后谷歌不允许 Android32位的APP再运行了。
大多数Java、Coltlin开发的因为是基于Java虚拟机的,没有32,64的区别,只要Android的JVM换了就可以了。而原生的估计就有这样的问题。
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 na45535 (na45535) ▲▲▲▲▲ -
注册会员
2020/9/11 0:54:44
2楼: 找了一周,终于找到解决办法,原因应该是Android 11对目录(/system/lib/.so)访问有限制,将目录修改,Delphi10.3.3版本编辑的apk就可以在安卓11正常运行了,文件不知道怎么上传,如果有需要的朋友,可以留言,我发给你。
----------------------------------------------
-
作者:
男 na45535 (na45535) ▲▲▲▲▲ -
注册会员
2020/9/11 10:29:42
3楼: 文件在Delphi10.3.3版本修改而来。替换文件后,修复Android 11启动闪退问题。
替换以下目录文件“System.o”,区分32和64位版本。
如果包含服务,还需要替换“libProxyAndroidService.so”。

C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android\debug
C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android\release
C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android64\debug
C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android64\release


文件修改内容如下:

10.3.3
{$ELSEIF defined(ANDROID32)}
  HICUUC := dlopen('/system/lib/libicuuc.so', RTLD_LAZY);
  HICUI18N := dlopen('/system/lib/libicui18n.so', RTLD_LAZY);
{$ELSE defined(ANDROID64)}
  HICUUC := dlopen('/system/lib64/libicuuc.so', RTLD_LAZY);
  HICUI18N := dlopen('/system/lib64/libicui18n.so', RTLD_LAZY);
{$ENDIF}

修改后

{$ELSE defined(ANDROID)}
  HICUUC := dlopen('libicuuc.so', RTLD_LAZY);
  HICUI18N := dlopen('libicui18n.so', RTLD_LAZY);
{$ENDIF}


总结:安卓11访问so文件,不需要路径(/system/lib/),不然出错闪退。
此帖子包含附件:na45535_2020911102732.zip 大小:10.91M
----------------------------------------------
-
作者:
男 blockke (blockke) ★☆☆☆☆ -
盒子活跃会员
2020/9/11 10:55:37
4楼: 好经验,让大家少走弯路
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ▲▲▲▲▲ -
普通会员
2020/9/11 11:11:44
5楼: 顶楼主,有问有答。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 keymark (嬲) ▲▲△△△ -
注册会员
2020/9/11 20:54:05
6楼: mark安卓经验
----------------------------------------------
git config --global alias.co 'clone --recurse-submodules'
git config --global alias.up 'submodule update --init --recursive'
懒鬼提速
http://qalculate.github.io/downloads.html
https://www.cctry.com/
作者:
男 aikei (dlkei) ▲△△△△ -
注册会员
2020/10/4 11:57:43
7楼: 楼主,10.3的apk安装到安卓11,还需要修改别的地方吗?我按照你的操作,还是无法安装到安卓11
----------------------------------------------
-
作者:
男 gong123456 (DELPHI先生) ★☆☆☆☆ -
普通会员
2021/1/15 15:20:30
8楼: 感谢大神,解决了Android11上闪退的大问题
----------------------------------------------
-
作者:
男 bdl1 (bdl1) ▲▲▲▲△ -
注册会员
2021/1/15 17:16:25
9楼: 多谢楼主,转贴了!
----------------------------------------------
-我的新浪博客
作者:
男 zyp1984 (小李他妈的飞刀) ★☆☆☆☆ -
普通会员
2021/1/15 21:03:07
10楼: 请问一下是修改了哪个文件的源代码?
----------------------------------------------
山外青山楼外楼,能人背后有能人弄..
作者:
男 keymark (嬲) ▲▲△△△ -
注册会员
2021/1/16 22:34:01
11楼: 绝对不止贴出图中些。so  些。so  按此在新窗口浏览图片    所以
起不来最好调试
----------------------------------------------
git config --global alias.co 'clone --recurse-submodules'
git config --global alias.up 'submodule update --init --recursive'
懒鬼提速
http://qalculate.github.io/downloads.html
https://www.cctry.com/
作者:
男 eastroads (eastroads) ★☆☆☆☆ -
注册会员
2021/1/19 17:20:53
12楼: 楼主,能说说你是怎么调试的吗,这都能找到错误原因,厉害啊!
----------------------------------------------
-
作者:
男 delphiteacher (delphiteacher) ▲▲▲▲△ -
注册会员
2021/1/24 17:30:49
13楼: 厉害
----------------------------------------------
欢迎加入OrangeUI的app开发阵营:http://www.orangeui.cn/,联系QQ452330643
作者:
男 leonandjames (leon) ▲△△△△ -
注册会员
2021/1/25 16:48:19
14楼: 请问 楼主 xe10 的程序同样闪退, 请问有没有解决的办法
----------------------------------------------
-
作者:
男 tn987 (tn987) ▲▲▲△△ -
注册会员
2021/1/25 19:28:58
15楼: 请问,修改的哪一个文件,文件名是什么?
----------------------------------------------
-
作者:
男 tn987 (tn987) ▲▲▲△△ -
注册会员
2021/1/25 20:30:31
16楼: 修改的文件名
  :\Program Files (x86)\Embarcadero\Studio\20.0\source\rtl\sys\ICU.inc

明天做个测试,看看行不行
----------------------------------------------
-
作者:
男 tn987 (tn987) ▲▲▲△△ -
注册会员
2021/1/26 15:40:39
17楼: 试过了,这个方法可行,谢谢
----------------------------------------------
-
作者:
男 kngstr (KngStr) ▲▲▲△△ -
注册会员
2021/1/27 15:57:01
18楼: 试着编译了下,发现缺文件,官方的论坛有文件,发出来共享下吧

原贴链接:https://quality.embarcadero.com/browse/RSP-27218?focusedCommentId=88179&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-88179

还有一个脚本文件,鉴于一次只能发一个文件,就贴上来吧,内容如下

@echo off
 
setlocal
set "BDS=C:\Program Files (x86)\Embarcadero\Studio\20.0"
set "OUTPUT_PATH=%USERPROFILE%\build"
 
mkdir "%OUTPUT_PATH%\android\debug"
mkdir "%OUTPUT_PATH%\android\release"
mkdir "%OUTPUT_PATH%\android64\debug"
mkdir "%OUTPUT_PATH%\android64\release"
 
"%BDS%\bin\dccaarm.exe" -$C- -$D2 -$O- -CG -H -M -Q -V- -W^ -Z --no-config -JPHN -W-UNSUPPORTED_CONSTRUCT -W-UNIT_DEPRECATED -W-SYMBOL_DEPRECATED -W-UNIT_PLATFORM -W-SYMBOL_PLATFORM -W-WIDECHAR_REDUCED "-R%BDS%\lib\android\debug" "-U%BDS%\lib\android\debug" "-O%BDS%\lib\android\debug" "-NU%OUTPUT_PATH%\android\debug" "-NH%OUTPUT_PATH%\android\debug" "-NO%OUTPUT_PATH%\android\debug" -M -y "%BDS%\source\rtl\sys\System.pas"
"%BDS%\bin\dccaarm.exe" -$C- -$D0 -$L- -CG -H -M -Q -V- -W^ -Z --no-config -JPHN -W-UNSUPPORTED_CONSTRUCT -W-UNIT_DEPRECATED -W-SYMBOL_DEPRECATED -W-UNIT_PLATFORM -W-SYMBOL_PLATFORM -W-WIDECHAR_REDUCED "-R%BDS%\lib\android\release" "-U%BDS%\lib\android\release" "-O%BDS%\lib\android\release" "-NU%OUTPUT_PATH%\android\release" "-NH%OUTPUT_PATH%\android\release" "-NO%OUTPUT_PATH%\android\release" -M -y "%BDS%\source\rtl\sys\System.pas"
"%BDS%\bin\dccaarm64.exe" -$C- -$D2 -$O- -CG -H -M -Q -V- -W^ -Z --no-config -JPHN -W-UNSUPPORTED_CONSTRUCT -W-UNIT_DEPRECATED -W-SYMBOL_DEPRECATED -W-UNIT_PLATFORM -W-SYMBOL_PLATFORM -W-WIDECHAR_REDUCED "-R%BDS%\lib\android64\debug" "-U%BDS%\lib\android64\debug" "-O%BDS%\lib\android64\debug" "-NU%OUTPUT_PATH%\android64\debug" "-NH%OUTPUT_PATH%\android64\debug" "-NO%OUTPUT_PATH%\android64\debug" -M -y "%BDS%\source\rtl\sys\System.pas"
"%BDS%\bin\dccaarm64.exe" -$C- -$D0 -$L- -CG -H -M -Q -V- -W^ -Z --no-config -JPHN -W-UNSUPPORTED_CONSTRUCT -W-UNIT_DEPRECATED -W-SYMBOL_DEPRECATED -W-UNIT_PLATFORM -W-SYMBOL_PLATFORM -W-WIDECHAR_REDUCED "-R%BDS%\lib\android64\release" "-U%BDS%\lib\android64\release" "-O%BDS%\lib\android64\release" "-NU%OUTPUT_PATH%\android64\release" "-NH%OUTPUT_PATH%\android64\release" "-NO%OUTPUT_PATH%\android64\release" -M -y "%BDS%\source\rtl\sys\System.pas"
此帖子包含附件:kngstr_202112715571.zip 大小:7.2K
----------------------------------------------
-
作者:
男 haughtiant (一滴蜜糖) ★☆☆☆☆ -
盒子活跃会员
2021/2/3 14:34:28
19楼: 替换文件后,反馈一下情况:
1、targetSdkVersion设置为29可以支持android11,并能正常工作,设置为28则不行,Android11启动时黑屏。
2、Android10,部分机型自带的拍照服务不能正常工作(无错误,也无法拍照)。
3、Android7,不定什么时候会卡住,无法退出。

还原后,targetSdkVersion=28,android6~Android10一切正常。

建议只针对Android11进行。
----------------------------------------------
-
作者:
男 zhao314 (老赵) ★☆☆☆☆ -
盒子活跃会员
2021/3/21 8:32:34
20楼: 使用10.4.2的o替换是不是好些?
----------------------------------------------
-
作者:
男 hksqgrh (hksqgrh) ★☆☆☆☆ -
盒子活跃会员
2021/5/19 13:56:00
21楼: 按照大家说的,不闪退了,但是还有问题
----------------------------------------------
-
作者:
男 pcplayer (pcplayer) ★☆☆☆☆ -
普通会员
2021/5/19 18:08:51
22楼: 安卓各版本不同真头大。如果是 WINDOWS,通常不会因为WIN的版本不同导致问题。
----------------------------------------------
-
作者:
男 807046799 (南山有雪) ▲▲△△△ -
注册会员
2021/5/20 15:52:45
23楼: 替换后,会提示Unable to load Midas due to missing code page conversion library,加入datasnap.midas也不行。
----------------------------------------------
-
作者:
男 he_19_79 (he) ▲▲▲▲△ -
注册会员
2021/7/6 16:05:11
24楼: 感谢一下, 楼主在3楼的文件替代下就能解决Android 11闪退的问题, 我用过了.
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v2.1 版权所有 页面执行39.0625毫秒 RSS