我是否可以阻止其他jar库发送任何通知?
我是一名独立游戏开发者,最近与想要与我合作的出版商联系。这些条款没问题,现在我必须将他们的广告-ddk实施到游戏中,我担心他们可能会使用违反开发者政策的通知广告(http://play.google.com/intl/en/about/developer-content-policy.html广告政策3" ...广告不得模拟或模拟系统通知或警告。")。我不想冒着阻止我的发布商帐户被阻止的风险。
答案 0 :(得分:3)
AFAIK无法直接拦截您应用中Notification
的显示。
但根据我的经验,如果您需要整合advertising-sdk
,为了显示/接收通知,他们通常会在<receivers>
中注册AndroidManifest.xml
,或者需要全部各种<permissions>
。要实现这一点,您需要在应用中添加实际的<receivers>
和<permissions>
,因此如果您不会声明这些内容,那么Receivers
会触发Notifications
不行。
如果您知道他们启动或点击某些Notifications
让我们在应用开始时说...您可以使用NotificationManager.cancelAll()
取消它们。
我可能会做的另一件事是访问他们的源代码,并检查他们是否在那里做了“邪恶”的事情。如果他们这样做......试着打破它或什么的。
答案 1 :(得分:1)
如果您不信任此JAR的提供商,请不要将其代码放在用户的设备上。显示通知只是他可以做的许多邪恶事情之一。也许你陷阱他的通知,但你没有意识到他正偷偷收集用户的敏感信息通过互联网传输。当你的应用适合儿童时,他可能会向用户展示色情广告。也许他使用用户的设备作为僵尸网络的一部分或通过挖掘比特币来运行用户的电池。你无法发现任何这些东西。
你必须让图书馆作者描述他的图书馆的行为,并以书面形式承诺它做了什么或不做什么。如果他不这样做,或者您不相信他遵守此协议,请记住您对您的应用程序包含的任何恶意软件负责。特别是,我倾向于不相信通过电子邮件发送Google Play中列出的地址的广告网络:其中许多都不值得信赖,Airpush是目前这方面最糟糕的垃圾邮件发送者。
答案 2 :(得分:0)
这些图书馆需要后台服务才能在您的应用中展示推送广告。通常你需要在你的清单中添加这样的东西:
<service android:name="com.adnetworksdk.AdService" >
<intent-filter>
<action android:name="com.adnetworksdk.AdServicecom.yourapp.packagename" />
</intent-filter>
</service>
如果您的清单中没有此功能,则当您的应用未投放时,无法投放任何内容,因此无法发送推送广告。
如果您真的想检查,请使用JD-GUI反编译JAR并查看来源。它可能是混淆的,但你应该能够看到它在做什么。将JAR反编译为可读的Java非常容易。