0
私のフレームワークのコードの下で自分のフレームワークを素早く作成しました。 フレームワークでApiID、ApiKey、ApiSecretの値を渡すとうまく動作しますが、私の素早いプロジェクトで値を渡したいのですが、そうすると動作しません。迅速なプロジェクトで価値を渡し、独自のフレームワーク機能を迅速に作成する方法
public class PushNotification: NSObject {
var ApiID:Int?
var ApiKey:String?
var ApiSecret:String?
public func didRegisterForRemoteNotificationsWithDeviceToken(deviceToken: Data,apiKey:String,apiSecret:String,apiId:Int)
{
// Convert Device Token into String
let deviceTokenString = deviceToken.reduce("", {$0 + String(format: "%02X", $1)})
print(deviceTokenString)
ApiKey = apiKey
ApiSecret = apiSecret
ApiID = apiId
let AppId = Bundle.main.bundleIdentifier!
// Get Unique Device ID
let oNSUUID: UUID = UIDevice.current.identifierForVendor!
let post: String = "appid=\(AppId)&deviceid=\(deviceTokenString)&ApiID=\(ApiID)&ApiKey=\(ApiKey)&ApiSecret=\(ApiSecret)&os=\("ios")®Id=\(oNSUUID.uuidString)"
let postData:Data = post.data(using: String.Encoding.ascii)!
let postLength:NSString = String(postData.count) as NSString
let urlstring = "https://www.abc.php"
let url = URL(string: urlstring)
var request = URLRequest(url: url!)
request.httpMethod = "POST"
request.httpBody = postData
request.setValue(postLength as String, forHTTPHeaderField: "Content-Length")
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
let connection: NSURLConnection = NSURLConnection(request: request as URLRequest, delegate: self)!
connection.start()
}
私のプロジェクトコードは、以下の機能のアプリケーションデリゲートクラスとアクセスで値を渡しました。
var APIKEY = "00000"
var APISECRET = "000000"
var APIID = 40
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
print("Device Token \(deviceToken)")
let appdetails = PushNotification.init()
appdetails.didRegisterForRemoteNotificationsWithDeviceToken(deviceToken: deviceToken, apiKey: APIKEY , apiSecret: APISECRET, apiId: APIID)
}
トライTOUの使用 'プロパティpublic varをこのコードを貼り付け+アイコンをクリックし、[新しいランタイムスクリプトをクリックして、ターゲットを選択...' – PiterPan
私はプロパティpublic varが、その動作していないを試してみました@ピターパン –