自新的 Android Studio版本“Chipmunk”以来,Gradle 更新帮助程序建议您package
从 中删除关键字AndroidManifest.xml
,而使用应用程序级别内的块namespace
中的对象。android
build.gradle
但是,使用最新版本2.4.2
以及标准导航库的版本,当为构建风格设置不同时2.5.0-rc01
,kapt 插件生成的方向不再导入正确的资源路径。applicationId
例如,如果我的默认包名称是,并且我有一个名为“my.package.com.dev”my.package.com
的风格,并且设置为,则生成的方向都会抛出构建错误:。dev
applicationId
namespace
my.package.com
Unresolved reference: R
还有其他人遇到过这个问题吗?我们能做些什么来解决这个问题吗?
我必须删除namespace
并放回package
my 中的参数AndroidManifest
才能解决此问题,但这似乎不对。
我写了一个android
App Widget,它运行正常.过了一段时间我不得不改变它的包名但它运作良好.我已经拥有了getPackageName
,它在日志中打印了正确的软件包名称,有时在我升级应用程序之后(或者只是在设备上运行它AndroidStudio
),小部件就会消失.后来又在升级后又回来了.这是我的logcat:06-20 14:59:31.208 23516-23516 /?E/InstalledAppDetails:检索包时出现异常:ir.yasin.dordane.rozshomar_widget
android.content.pm.PackageManager$NameNotFoundException: ir.yasin.dordane.rozshomar_widget
at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:115)
at com.android.settings.applications.InstalledAppDetails.retrieveAppEntry(InstalledAppDetails.java:723)
at com.android.settings.applications.InstalledAppDetails.refreshUi(InstalledAppDetails.java:758)
at com.android.settings.applications.InstalledAppDetails.onActivityResult(InstalledAppDetails.java:595)
at android.app.Activity.dispatchActivityResult(Activity.java:6139)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3564)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3611)
at android.app.ActivityThread.access$1400(ActivityThread.java:147)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1345)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
Run Code Online (Sandbox Code Playgroud) Android studio将生成默认的apk名称为app-(release | debug).apk.
如何生成apk文件名与app的包名一样com.example-debug.apk
.
android apk android-studio android-gradle-plugin package-name
注意这个问题是关于 Go 语言规范而不是最佳实践或建议。
我读了很多关于包的文章,但还是不太明白目录和包名的关系。这是我的例子。
我的项目结构如下截图所示。当我这样做时,go run ~/go/src/myproj/main.go
错误说:
src\myproj\main.go:5:2: 在以下任一位置找不到包“myproj/pa/pb”:c:\go\src\myproj\pa\pb(来自 $GOROOT)C:\Users\terry\ go\src\myproj\pa\pb (来自 $GOPATH)
但是,如果我在 p.go 中更改package pb
为package pa
,并将导入从 更改"myproj/pa/pb"
为"myproj/pa"
,然后在 main.go 中更改fmt.Print(pb.Greet)
为fmt.Print(pa.Greet)
,它将起作用。最里面的目录必须与包声明名称匹配吗?我的go版本是1.14.4
我使用各自的原生程序在 AppStore/GooglePlay 上为 iOS 和 Android 上的应用程序上传了测试版本。换句话说,我保留了他们的捆绑标识符字符串。现在我正在尝试使用 Flutter 编写应用程序,这对我来说是全新的。
我可以为此应用创建一个 Flutter 项目(在 Android Studio 上运行),然后分别更改每个平台的包标识符名称吗?它是否有效,以便我可以不断更新这些应用程序?
例如,一个应用程序使用 iOS 的捆绑标识符创建,如下所示:'com.thisApp.thisApp'
,在 itunessconnect(保留)上。在 Google Play Console 上为 Android 创建了具有不同捆绑标识符的相同应用程序并保留:'com.anotherApp.anotherApp'
。没有一个应用程序是实时的。
现在,如果我创建一个 Flutter 项目,我必须选择一个包名,比如'com.thisApp.thisApp'
. 默认情况下,将为两个平台创建此包名称!虽然我发现你可以在 Flutter 中更改包名,如这篇文章 -如何在 Flutter 中更改包名?
但是我仍然不清楚,如果我真的改变它,包名是否必须与每个平台相同?即,'com.anotherApp.anotherApp'
或者每个平台的包名/包 ID 是否不同?即使它适用于调试,它也适用于发布吗?
我们丢失了Android应用程序的密钥库文件...并且想要使用与原始应用程序使用不同密钥库签名的新应用程序替换当前应用程序.如果我们取消发布应用程序,是否可以上传具有相同包名称的新应用程序?或者我们是否被迫使用新的包名上传它?
编辑:.keystore
文件丢失,而不是密码.
我遇到了以下问题:我实现的应用程序包含另一个项目作为依赖项(类型为aar).两个项目共享同一个父pom.依赖项包括应用程序正在使用的资源.要访问库项目中的资源,可以通过调用获取资源ID context.getResources().getIdentifier(resourceKey, resourceType, packageName)
.我通过调用getPackageName()
给定的context
对象获取包名称.在使用之前更改项目的包名称之前
<renameManifestPackage>com.example.newpackagename</renameManifestPackage>
Run Code Online (Sandbox Code Playgroud)
访问图书馆资源工作正常.但是在重命名应用程序的包名后我得到了一个,android.content.res.Resources$NotFoundException
因为getIdentifier()
调用仍然期望应用程序的旧包名称并且调用getPackageName()
返回新的(正如预期的那样).
现在我想知道我是否遗漏了某些东西,或者这是android maven插件中的错误?https://github.com/simpligility/android-maven-plugin
我需要获取android锁屏活动的包名.我用google搜索除了/sf/answers/1181674511/之外什么都没找到,这似乎不起作用.
有没有办法获得锁屏包名称
您好,我正在开发一个 Android 应用程序和一个 IOS 应用程序。
我的问题是关于 Android 包名称和 IOS 包 ID。
在两个平台上使用相同的值是最佳实践吗"com.mysite.myapp"
?或者我应该为不同的平台使用不同的值,例如:
"com.mysite.myapp.android"
在安卓版本上"com.mysite.myapp.ios"
在IOS版本上随着谷歌和亚马逊分别返回com.android.vending
和com.amazon.venezia
val pm = packageManager
val installer = pm.getInstallerPackageName(packageName)
Run Code Online (Sandbox Code Playgroud)
将通过什么检查来确定该应用程序是否是从三星商店安装的?
package-name ×10
android ×9
google-play ×2
ios ×2
aar ×1
apk ×1
flutter ×1
galaxy-apps ×1
go ×1
go-modules ×1
gradle ×1
keystore ×1
lockscreen ×1
maven ×1
package ×1