ネイティブAndroidアプリでSalesforce SDK(4.1.x)を使用しています。 RestClient.sendAsyncメソッドを使用して、フォームデータをカスタムオブジェクトに投稿します。その部分は正常に動作しています。今、モバイルユーザーが撮影した写真をアップロードして添付する必要があります。 RestClientにはuploadFileメソッドがあることがわかります。これは正しい方法ですか?その場合は、アップロードしたファイルをカスタムフォームデータにどのようにして接続しますか?Android用Salesforce Mobile SDKを使用してファイルをアップロードするにはどうすればよいですか?
0
A
答えて
1
私はこれを考え出した。まず、次のようにして親オブジェクト(メインフォームデータ)を作成します。
request = RestRequest.getRequestForCreate(apiVersion, objectType, fields);
client.sendAsync(restRequest, new RestClient.AsyncRequestCallback() {...
onSuccessメソッドでは、新しいオブジェクトのIDをレスポンスから取得します。 JSONオブジェクトとIDを取得する方法を示す多くの例があります。この親に武装して、添付ファイルを作成できるようになりました。コードは次のようになります。
private void postImageAsAttachment(String parentId, String title) {
Map<String, Object> fields = new HashMap<String, Object>();
fields.put("Name", title);
fields.put("ParentId", parentId);
fields.put("Body", ImageHelper.getBase64FromImage(mCurrentPhotoPath));
RestRequest request = null;
try {
request = RestRequest.getRequestForCreate(apiVersion, "Attachment", fields);
} catch (Exception ex) {
Log.d(TAG, "sendRequest: ", ex);
Toast.makeText(MainActivity.this, "The file upload failed: " + ex.toString(), Toast.LENGTH_LONG).show();
}
client.sendAsync(request, new RestClient.AsyncRequestCallback() {...
Iは、単に画像ファイルをロードImageHelperと呼ばれる単純なクラスを使用して(必要な場合)、画像圧縮を実行し、BASE64は、画像データを符号化しています。その結果、「Attachment」オブジェクトが親オブジェクトの子として作成されます。
私はこれが次の人に役立つことを願っています。
関連する問題
- 1. android sdkを使用してAndroidアプリケーションをデバッグするにはどうすればよいですか?
- 2. JSF/Primefacesを使用してファイルをアップロードするにはどうすればよいですか?
- 3. Androidのキーストアを使用してFlex Mobile Appに署名するにはどうすればよいですか?
- 4. CLIのみを使用してLinuxにAndroid SDKをインストールするにはどうすればよいですか?
- 5. HTTPおよびコマンドラインツールを使用してファイルをアップロードするにはどうすればよいですか?
- 6. DB Visualizerを使用してAndroid SDK DBにアクセスするにはどうすればよいですか?
- 7. ajaxを使用してjqueryでファイルをアップロードするにはどうすればよいですか?
- 8. JSON APIを使用してCarrierwave経由でファイルをアップロードするにはどうすればよいですか?
- 9. Classic ASPを使用してAzure Blobストレージにファイルをアップロードするにはどうすればよいですか?
- 10. 非同期タスクを使用してファイルをサーバーにアップロードするにはどうすればよいですか?
- 11. Pythonスクリプトを使用してGoogleドライブにファイルをアップロードするにはどうすればよいですか?
- 12. Javaを使用してGoogle Cloud Storageにファイルをアップロードするにはどうすればよいですか?
- 13. カスタムアップロードフォームを使用してWordPressにファイルをアップロードするにはどうすればよいですか?
- 14. VB6を使用してファイルをOracle BLOBフィールドにアップロードするにはどうすればよいですか?
- 15. JSフェッチAPIを使用してファイルをアップロードするにはどうすればよいですか?
- 16. MS Graph APIを使用してファイルをアップロードするにはどうすればよいですか?
- 17. Selenium IDEを使用してファイルをアップロードするにはどうすればよいですか?
- 18. Node.jsを使用してファイルをアップロードするにはどうすればよいですか?
- 19. SalesforceアップデートのPATCHメソッドを使用してリクエストを送信するにはどうすればよいですか?
- 20. salesforceをデータストアとしてアクティブなレコードクエリを使用するにはどうすればよいですか?
- 21. 最新のSDK APIを使用しないようにするにはどうすればよいですか?
- 22. Knockout.jsを使用してダイナミックなjQuery Mobileボタンをバインドするにはどうすればよいですか?
- 23. javascriptを使用してjQuery Mobileアプリケーションのテーマを変更するにはどうすればよいですか?
- 24. イメージモジュールを使用して、イメージをリモートでDrupalにアップロードするにはどうすればよいですか?
- 25. ローカルWSDLファイルを使用してWCFサービスを使用するにはどうすればよいですか?
- 26. SDK /プログラムを使用してiPhoneでAppIDを取得するにはどうすればよいですか?
- 27. AppleScriptを使用してxcodeでActive SDKを設定するにはどうすればよいですか?
- 28. SDKを使用してAWS EC2でイメージ(AMI)を削除するにはどうすればよいですか?
- 29. マルチパートを使用してHTTP POSTメソッドにREQUEST値を追加して、ファイルをAndroidのPHPサーバーにアップロードするにはどうすればよいですか?
- 30. Game APIを使用してPicasaに写真をアップロードするにはどうすればよいですか?
私に完全なコードを教えてください。 – kgandroid
はBasicNetwork.performRequestを与える:https://ap2.salesforce.com/services/data/v36.0/sobjects/Attachment – kgandroid
のための予期しない応答コード400を、私は後で今日これを掘るでしょう。その間、SFのオブジェクトが添付を許可することを確認してください。私たちのオブジェクトが添付ファイルを許可するように設定されていなかったので、最初はエラーが発生しました。オブジェクト/エンティティに対する適切な権限を持っていないユーザーもエラーを受け取りました。 –