gpt4 book ai didi

android - 使用 Delphi XE5 for Android 创建 WifiConfiguration

转载 作者:行者123 更新时间:2023-12-03 18:48:53 28 4
gpt4 key购买 nike

我正在尝试为 Android 创建一个 WifiConfiguration。
可以设置所有其他属性。
但是如果我尝试设置 SSID 或 BSSID,我会遇到段错误 (11),并且应用程序和 Delphi 只是挂起。

var
WIFIConfig: JWifiConfiguration;
begin
WIFIConfig := TJWifiConfiguration.JavaClass.init;
WIFIConfig.hiddenSSID := false; -> works
WIFIConfig.SSID := StringtoJString('"YOUR_WLAN_SSID"'); -> App just hangs
end;

http://developer.android.com/reference/android/net/wifi/WifiConfiguration.html
   JWifiConfigurationClass = interface(JObjectClass)
['{F69F53BC-BC63-436A-8DA9-57389B30CAA8}']
function init: JWifiConfiguration; cdecl; overload;

end;

[JavaSignature('android/net/wifi/WifiConfiguration')]
JWifiConfiguration = interface(JObject)
['{382E85F2-6BF8-4255-BA3C-03C696BC6451}']
function _GetSSID: JString;
procedure _SetSSID(Value: JString);
function _GetBSSID: JString;
procedure _SetBSSID(Value: JString);
function _GethiddenSSID: boolean;
procedure _SethiddenSSID(Value: boolean);
function _GetallowedAuthAlgorithms: JBitSet;
procedure _SetallowedAuthAlgorithms(Value: JBitSet);
function _GetallowedGroupCiphers: JBitSet;
procedure _SetallowedGroupCiphers(Value: JBitSet);
function _GetallowedKeyManagement: JBitSet;
procedure _SetallowedKeyManagement(Value: JBitSet);
function _GetallowedPairwiseCiphers: JBitSet;
procedure _SetallowedPairwiseCiphers(Value: JBitSet);
function _GetallowedProtocols: JBitSet;
procedure _SetallowedProtocols(Value: JBitSet);
function _GetnetworkId: integer;
procedure _SetnetworkId(Value: integer);
function _GetpreSharedKey: JString;
procedure _SetpreSharedKey(Value: JString);
function _Getstatus: integer;
procedure _Setstatus(Value: integer);
function _GetwepTxKeyIndex: integer;
procedure _SetwepTxKeyIndex(Value: integer);
function _GetwepKeys: TJavaObjectArray<JString>;
procedure _SetwepKeys(Value: TJavaObjectArray<JString>);

property SSID: JString read _GetSSID write _SetSSID;
property BSSID: JString read _GetBSSID write _SetBSSID;
property allowedAuthAlgorithms: JBitSet read _GetallowedAuthAlgorithms write _SetallowedAuthAlgorithms;
property allowedGroupCiphers: JBitSet read _GetallowedGroupCiphers write _SetallowedGroupCiphers;
property allowedKeyManagement: JBitSet read _GetallowedKeyManagement write _SetallowedKeyManagement;
property allowedPairwiseCiphers: JBitSet read _GetallowedPairwiseCiphers write _SetallowedPairwiseCiphers;
property allowedProtocols: JBitSet read _GetallowedProtocols write _SetallowedProtocols;
property hiddenSSID: boolean read _GethiddenSSID write _SethiddenSSID;
property networkId: integer read _GetnetworkId write _SetnetworkId;
property preSharedKey: JString read _GetpreSharedKey write _SetpreSharedKey;
property priority: integer read _GetnetworkId write _SetnetworkId;
property status: integer read _Getstatus write _Setstatus;
property wepKeys: TJavaObjectArray<JString> read _GetwepKeys write _SetwepKeys;
property wepTxKeyIndex: integer read _GetwepTxKeyIndex write _SetwepTxKeyIndex;

end;

TJWifiConfiguration = class(TJavaGenericImport<JWifiConfigurationClass,
JWifiConfiguration>)
end;

最佳答案

你错过了 cdecl所有 JWifiConfiguration 的调用约定方法。

[JavaSignature('android/net/wifi/WifiConfiguration')]
JWifiConfiguration = interface(JObject)
['{382E85F2-6BF8-4255-BA3C-03C696BC6451}']
function _GetSSID: JString; cdecl;
procedure _SetSSID(Value: JString); cdecl;
function _GetBSSID: JString; cdecl;
procedure _SetBSSID(Value: JString); cdecl;
function _GethiddenSSID: boolean; cdecl;
procedure _SethiddenSSID(Value: boolean); cdecl;
function _GetallowedAuthAlgorithms: JBitSet; cdecl;
procedure _SetallowedAuthAlgorithms(Value: JBitSet); cdecl;
function _GetallowedGroupCiphers: JBitSet; cdecl;
procedure _SetallowedGroupCiphers(Value: JBitSet); cdecl;
function _GetallowedKeyManagement: JBitSet; cdecl;
procedure _SetallowedKeyManagement(Value: JBitSet); cdecl;
function _GetallowedPairwiseCiphers: JBitSet; cdecl;
procedure _SetallowedPairwiseCiphers(Value: JBitSet); cdecl;
function _GetallowedProtocols: JBitSet; cdecl;
procedure _SetallowedProtocols(Value: JBitSet); cdecl;
function _GetnetworkId: integer; cdecl;
procedure _SetnetworkId(Value: integer); cdecl;
function _GetpreSharedKey: JString; cdecl;
procedure _SetpreSharedKey(Value: JString); cdecl;
function _Getstatus: integer; cdecl;
procedure _Setstatus(Value: integer); cdecl;
function _GetwepTxKeyIndex: integer; cdecl;
procedure _SetwepTxKeyIndex(Value: integer); cdecl;
function _GetwepKeys: TJavaObjectArray<JString>; cdecl;
procedure _SetwepKeys(Value: TJavaObjectArray<JString>); cdecl;

property SSID: JString read _GetSSID write _SetSSID;
property BSSID: JString read _GetBSSID write _SetBSSID;
property allowedAuthAlgorithms: JBitSet read _GetallowedAuthAlgorithms write _SetallowedAuthAlgorithms;
property allowedGroupCiphers: JBitSet read _GetallowedGroupCiphers write _SetallowedGroupCiphers;
property allowedKeyManagement: JBitSet read _GetallowedKeyManagement write _SetallowedKeyManagement;
property allowedPairwiseCiphers: JBitSet read _GetallowedPairwiseCiphers write _SetallowedPairwiseCiphers;
property allowedProtocols: JBitSet read _GetallowedProtocols write _SetallowedProtocols;
property hiddenSSID: boolean read _GethiddenSSID write _SethiddenSSID;
property networkId: integer read _GetnetworkId write _SetnetworkId;
property preSharedKey: JString read _GetpreSharedKey write _SetpreSharedKey;
property priority: integer read _GetnetworkId write _SetnetworkId;
property status: integer read _Getstatus write _Setstatus;
property wepKeys: TJavaObjectArray<JString> read _GetwepKeys write _SetwepKeys;
property wepTxKeyIndex: integer read _GetwepTxKeyIndex write _SetwepTxKeyIndex;
end;

关于android - 使用 Delphi XE5 for Android 创建 WifiConfiguration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19890438/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com