【发布时间】:2011-04-07 17:56:01
【问题描述】:
Adfree 真的让我作为一名 Android 开发人员感到不安。我在市场上免费发布应用程序,我只要求用户在使用我的应用程序时查看广告。我喜欢赚一点钱,而不是从我的用户口袋里拿走。我假设您是否在 Google 上找到了这个,而不是我假设这也会困扰您。
我和我的一个朋友一起写了一小段代码来测试用户是否在他们的手机上安装了 Adfree。如果它返回正面(应用程序已安装),它会通知用户他们的手机上安装了 adfree,并且为了使用该应用程序,他们必须卸载它。然后它继续关闭应用程序,因此用户在 Adfree 消失之前无法使用该应用程序。
首先,把它放在你的 OnCreate 中:
adfreetest();
现在,将此代码放入您的应用程序的某个位置(它是模块化的,因此可以在任何应用程序中使用)
private void adfreetest() {
try{
ApplicationInfo info = getPackageManager()
.getApplicationInfo("com.bigtincan.android.adfree", 0 );
//-- application exists
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("To Use this Application, You Must Uninstall Adfree.")
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
main.this.finish();
}
});
AlertDialog alert = builder.create();
alert.show();
} catch( PackageManager.NameNotFoundException e ){
//-- application doesn't exist
}
}
确保将 main.this.finish(); 中的 main 更改为您的活动名称。
如果您找到更好的方法,请发布!
【问题讨论】:
-
也许收集一些关于有多少用户使用 AdFree 的统计数据?你可能会在那些最不值得的人身上浪费更多的时间!
-
当然,老问题是你可能会在这里将自己设置为目标......
-
不要因为禁用广告而惩罚用户。
-
@jnpcl 作者完全在他的权利范围内 - 用户查看广告是他获得报酬的方式。通过禁用广告,用户无需付费即可使用软件。