我使用以下方法获取应用程序名称和packageName,但是我需要iPhone用户的Bundle ID。我想分享应用程序链接。我在android中做到了,但在iphone中我需要绑定ID。
Future<Null> _initPackageInfo() async {
final PackageInfo info = await PackageInfo.fromPlatform();
setState(() {
_packageInfo = info;
packageName = info.packageName;
appName = info.appName;
buildNumber = info.buildNumber;
});
}
Run Code Online (Sandbox Code Playgroud)
Sur*_*gch 17
要手动查找项目名称,可以在AndroidManifest.xml或Info.plist中查找。
在Android中,包名称在AndroidManifest中:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
Run Code Online (Sandbox Code Playgroud)
在iOS中,包名称是Info.plist中的包标识符:
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
Run Code Online (Sandbox Code Playgroud)
在Runner.xcodeproj / project.pbxproj中可以找到:
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
Run Code Online (Sandbox Code Playgroud)
在 Flutter 项目的 iOS 部分,产品包标识符project.pbxproj位于路径中的文件中:
[your-flutter-project-dir]\ios\Runner.xcodeproj\project.pbxproj
并指定如下:
PRODUCT_BUNDLE_IDENTIFIER = com.app.flutter.example;
Run Code Online (Sandbox Code Playgroud)
请注意,此值与Android Package NameFlutter 项目中的值相同。
使用get_version包。这是最简单的方法
安装:
dependencies:
get_version: any
Run Code Online (Sandbox Code Playgroud)
用法:
String projectAppID;
// Platform messages may fail, so we use a try/catch PlatformException.
try {
projectAppID = await GetVersion.appID;
} on PlatformException {
projectAppID = 'Failed to get app ID.';
}
Run Code Online (Sandbox Code Playgroud)
您可以将它用作任何您想要的内容中的字符串,例如文本小部件等...
小型应用程序中 get_version 的另一个摘录:
import 'package:get_version/get_version.dart';
class _MyAppState extends State<MyApp> {
String _projectAppID = '';
@override
initState() {
super.initState();
initPlatformState();
}
// Platform messages are asynchronous, so we initialize in an async method.
initPlatformState() async {
String projectAppID;
try {
projectAppID = await GetVersion.appID;
} catch (e) {
projectAppID = 'Failed to get app ID.';
}
setState(() {
_projectAppID = projectAppID;
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: ListTile(
leading: new Icon(Icons.info),
title: const Text('App ID'),
subtitle: new Text(_projectAppID),
),
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
输出 :
| 归档时间: |
|
| 查看次数: |
5520 次 |
| 最近记录: |