第二世代管理パッケージ開発者ガイド
第二世代管理パッケージのワークフロー
管理パッケージの保護コンポーネント
プロバイダー無料容量を使用したプラットフォームキャッシュ区分の設定
Apex コードのメタデータアクセス
知的財産の保護
パッケージ内の Salesforce URL のコール
第二世代管理パッケージの Apex クラスの名前空間ベースの参照
Salesforce 外部のサービスの操作
第二世代管理パッケージでの接続アプリケーションのパッケージ化
注文の新規保存方式へのテストと対応
第二世代管理パッケージのベストプラクティス
第一世代管理パッケージと第二世代管理パッケージの差異
第二世代管理パッケージの特定のメタデータの動作
第二世代管理パッケージのプロファイルと名前空間の可視性を処理する方法を説明します。
-
管理パッケージの保護コンポーネント
開発者は、特定のコンポーネントに保護マークを付けることができます。保護コンポーネントは、登録者の組織で作成されたコンポーネントからリンク付けしたり参照したりすることはできません。開発者は、今後のリリースで、インストールの失敗を心配することなく保護コンポーネントを削除できます。ただし、コンポーネントが非保護に設定され、グローバルにリリースされると、開発者は削除できなくなります。 -
プロバイダー無料容量を使用したプラットフォームキャッシュ区分の設定
セキュリティレビューに合格した管理パッケージには、3 MB の無料のプラットフォームキャッシュ容量が Salesforce から提供されます。これは、プロバイダー無料容量という容量種別を介して使用でき、すべての Developer Edition 組織で自動的に有効になります。 -
Apex コードのメタデータアクセス
Apex の Metadata 名前空間を使用して、パッケージ内のメタデータにアクセスします。 -
パッケージの権限セットおよびプロファイルの設定
権限セット、権限セットグループ、プロファイル設定のいずれかの方法で、権限およびその他のアクセス設定をパッケージに付与できます。プロファイル設定は、付与する必要のある特定のアクセス権が権限セットでサポートされていない場合にのみ使用します。それ以外の場合は、権限セットまたは権限セットグループを使用します。 -
知的財産の保護
カスタムオブジェクト、カスタムリンク、レポート、その他のインストール済みアイテムは詳細がインストーラーに公開されるため、悪意あるコンテンツがないかインストーラーがチェックできます。ただし、アプリケーションのコンポーネントが公開されるため、開発者が一部の知的財産を保護できなくなります。 -
パッケージ内の Salesforce URL のコール
Salesforce が対象組織に提供する URL は、組織種別や設定に応じて変化します。考えられるすべての URL 形式をサポートするパッケージを作成するには、可能な限り、相対 URL を使用してください。パッケージ機能で完全な URL が必要な場合は、DomainCreator Apex クラスを使用して、対応するホスト名を取得します。この方法を使用すると、組織種別や [私のドメイン] の設定に関係なく、すべての組織でパッケージが機能します。 -
第二世代管理パッケージの Apex クラスの名前空間ベースの参照
@NamespaceAccessible は、パッケージ内の公開 Apex を、同じ名前空間を使用する他のパッケージで使用できるようにします。このアノテーションがないと、第二世代管理パッケージで定義されている Apex クラス、メソッド、インターフェース、およびプロパティは、名前空間を共有する他のパッケージからアクセスできません。グローバルとして宣言されている Apex は、アノテーションを必要とせず、常にすべての名前空間で使用できます。 -
Salesforce 外部のサービスの操作
-
第二世代管理パッケージでの接続アプリケーションのパッケージ化
接続アプリケーションを第二世代管理パッケージに追加します。 -
注文の新規保存方式へのテストと対応
注文オブジェクトを含むパッケージを作成した場合、その種別を問わず、インストール済みパッケージが機能しないことがあり、パッケージのアップグレードまたは新しいパッケージのインストールがブロックされます。その理由は次のとおりです。注文オブジェクトに関連付けられているレコードのカスタムアプリケーションロジックが適切に評価されなかった問題には、「注文の保存方式」リリース更新で対処しているためです。