Skip to content

Navigation Menu

Sign in
Sign up

Latest commit

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PackageInfo Plugin for NativePHP Mobile

Latest Version Packagist Downloads License

A NativePHP Mobile plugin that provides an API for querying application package information — similar to Flutter's package_info_plus.

Requirements

  • PHP ^8.2
  • nativephp/mobile ^3.0 or ^4.0 (SuperNative)

Installation

composer require codingwithrk/package-info
php artisan native:plugin:register codingwithrk/package-info

The service provider is auto-discovered by Laravel.

Usage

Via Facade

use Codingwithrk\PackageInfo\Facades\PackageInfo;
$info = PackageInfo::getInfo();
if ($info) {
 echo $info->appName; // "My App"
 echo $info->packageName; // "com.example.myapp"
 echo $info->version; // "1.2.3"
 echo $info->buildNumber; // "42"
 echo $info->installerStore; // "com.android.vending" (Android) or "" (iOS)
}

getInfo() returns null when called outside a NativePHP Mobile environment.

Returned Data

getInfo() returns a PackageInfoData value object with the following properties:

Property Type Description
appName string Human-readable application name
packageName string Unique app identifier (bundle ID on iOS, application ID on Android)
version string Marketing version string (e.g. "1.2.3")
buildNumber string Build/version code as a string (e.g. "42")
installerStore string Package name of the installing store, or empty string if unknown/not applicable

You can also convert the data to an array:

$array = $info->toArray();
// ['appName' => '...', 'packageName' => '...', 'version' => '...', 'buildNumber' => '...', 'installerStore' => '...']

Listening for Events

After getInfo() successfully retrieves data, a PackageInfoRetrieved event is dispatched. You can listen for it in a Livewire component using the #[OnNative] attribute:

use Codingwithrk\PackageInfo\Events\PackageInfoRetrieved;
use Codingwithrk\PackageInfo\PackageInfoData;
use Native\Mobile\Attributes\OnNative;
#[OnNative(PackageInfoRetrieved::class)]
public function handlePackageInfoRetrieved(PackageInfoData $info): void
{
 $this->appName = $info->appName;
 $this->version = $info->version;
 $this->buildNumber = $info->buildNumber;
}

Platform Support

Platform Supported
Android Yes
iOS Yes

Support

For questions or issues, email connect@codingwithrk.com

License

The MIT License (MIT). Please see License File for more information.

About

A NativePHP Mobile plugin provides an API for querying information about an application package.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /