def bulkDetails(self, packageNames):
params = {'<STR_LIT>': '<STR_LIT:1>'}<EOL>req = googleplay_pb2.BulkDetailsRequest()<EOL>req.docid.extend(packageNames)<EOL>data = req.SerializeToString()<EOL>message = self.executeRequestApi2(BULK_URL,<EOL>post_data=data.decode("<STR_LIT:utf-8>"),<EOL>content_type=CONTENT_TYPE_PROTO,<EOL>params=params)<EOL>response = message.payload.bulkDetailsResponse<EOL>return [None if not utils.hasDoc(entry) else<EOL>utils.parseProtobufObj(entry.doc)<EOL>for entry in response.entry]<EOL>
Get several apps details from a list of package names.

        This is much more efficient than calling N times details() since it
        requires only one request. If an item is not found it returns an empty object
        instead of throwing a RequestError('Item not found') like the details() function

        Args:
            packageNames (list): a list of app IDs (usually starting with 'com.').

        Returns:
            a list of dictionaries containing docv2 data, or None
            if the app doesn't exist