|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2022/10/1 10:54:57 |
标题: |
delphi 跨平台程序在Android运行有问题 |
浏览:1376 |
|
加入我的收藏 |
楼主: |
Delphi帮助文件的例子,跨ios、Android平台,但是在Android平台运行出错,无论在模拟器还是真机都有问题
此帖子包含附件:
 大小:115.7K |
----------------------------------------------
- |
作者: |
|
2022/10/1 11:08:53 |
2楼: |
delphi 11.2 空白的apk可以运行 mumu模拟器支持Android 6.0,华为手机鸿蒙2.0
----------------------------------------------
-
|
作者: |
|
2022/10/1 11:12:04 |
3楼: |
地址00000000,一般是访问了未创建的实例?
----------------------------------------------
delphi 是兴趣,和工作无关,即使它倒闭。又不靠它 delphi 吃饭,怕甚?
|
作者: |
|
2022/10/1 19:10:02 |
5楼: |
从提示看访问了未创建的实例属性或方法。
----------------------------------------------
-
|
作者: |
|
2022/10/1 22:48:44 |
6楼: |
源码给我,试试。我这编译安卓能运行良好。
----------------------------------------------
相信自己,若自己都不相信,那还有谁可信。
|
作者: |
|
2022/10/2 9:45:28 |
7楼: |
@letianwuji 这是很简单的,帮助文件的例子,模拟器和真机运行都有问题,麻烦您了
----------------------------------------------
-
|
作者: |
|
2022/10/2 11:46:03 |
8楼: |
光说有问题,却不说问题是怎么导致的。是一启动就出错,还是点了某个按钮出错,还是干了什么事情出错?
不会报告问题的人,不适合写程序。
----------------------------------------------
-
|
作者: |
|
2022/10/2 11:54:12 |
9楼: |
@pcplayer 程序可以启动,添加记录,点了Add按钮后出错
----------------------------------------------
-
|
作者: |
|
2022/10/2 12:25:38 |
10楼: |
有设置断点吗?执行到哪一行出的问题?
----------------------------------------------
-
|
作者: |
|
2022/10/2 14:44:54 |
11楼: |
android程序,不知道应该怎么调试
----------------------------------------------
-
|
作者: |
|
2022/10/2 17:39:24 |
12楼: |
// //这里错了 eMails.Free; // eMails := TContactEmails.Create; try
eMails.AddEmail(TContactEmail.TLabelKind.Work, edtWorkMail.Text); Contact.eMails := eMails; finally //屏蔽这一句 //eMails.Free; end;
----------------------------------------------
-
|
作者: |
|
2022/10/2 20:42:03 |
13楼: |
安卓程序和调试win一样没什么区别吧?插上手机,debug,run。。。除非你是安卓8.x当我没说过。。。
----------------------------------------------
delphi 是兴趣,和工作无关,即使它倒闭。又不靠它 delphi 吃饭,怕甚?
|
作者: |
|
2022/10/2 20:47:18 |
13楼: |
确实是这一句有问题,但是不明白为什么?eMails不应该释放吗?而且数据没有添加到listbox里面
----------------------------------------------
-
|
作者: |
|
2022/10/2 22:07:28 |
14楼: |
安卓下,插上手机,IDE 设置为 debug 模式,设置断点,跑到断点一样会停的。和 Windows 底下的开放一样一样的。
----------------------------------------------
-
|
作者: |
|
2022/10/2 22:25:20 |
15楼: |
楼主,我没有去调试你的代码。你自己试试看:
eMails: TContactEmails;
TContactEmails = class(TObjectList<TContactEmail>)
eMails := TContactEmails.Create;
说明这个 eMails 是一个 TObjectList,你再去看看:
constructor TObjectList<T>.Create; begin Create(True); end;
constructor TObjectList<T>.Create(AOwnsObjects: Boolean); begin inherited Create; FOwnsObjects := AOwnsObjects; end;
看明白没? Create 采用了默认值 True,也就是这个 TObjectlist 管理内部的 Object 的生命周期。
因此,eMails.Free; 就会释放 eMails 内部的多个 Object;
那么,你试试设置 eMails.OwnsObjects := False 再看看释放它会不会有问题。
----------------------------------------------
-
|
|