彩票类App现在上市场越来越困难,应该怎么样进行推广( 四 )
See the License for the specific language governing permissions and
limitations under the License.
***/
#include \u0026lt;stdio.h\u0026gt;
#include \u0026lt;stdint.h\u0026gt;
#include "trace_defs.h"
#include "trace_metadata_util.h"
static int relocate_ptr(intptr_t original_base_address, intptr_t new_base_address, intptr_t *ptr)
{
(*ptr) -= original_base_address;
(*ptr) += new_base_address;
return 0;
}
static void relocate_descriptor_parameters(void *old_base, void *new_base, struct trace_log_descriptor *descriptor)
{
struct trace_param_descriptor *param;
param = descriptor-\u0026gt;params;
while (param-\u0026gt;flags != 0) {
if (param-\u0026gt;str) {
relocate_ptr((intptr_t) old_base, (intptr_t) new_base, (intptr_t *) \u0026amp;param-\u0026gt;str);
}
if (param-\u0026gt;param_name) {
relocate_ptr((intptr_t) old_base, (intptr_t) new_base, (intptr_t *) \u0026amp;param-\u0026gt;param_name);
}
param++;
}
}
static void relocate_type_definition_params(void *old_base, void *new_base, struct trace_type_definition *type)
{
struct trace_enum_value *param;
param = type-\u0026gt;enum_values;
while (param-\u0026gt;name != NULL) {
relocate_ptr((intptr_t) old_base, (intptr_t) new_base, (intptr_t *) \u0026amp;param-\u0026gt;name);
param++;
}
}
void relocate_metadata(void *original_base_address, void *new_base_address, char *data, unsigned int descriptor_count, unsigned int type_count)
{
unsigned int i;
struct trace_log_descriptor *log_descriptors = (struct trace_log_descriptor *) data;
struct trace_type_definition *type_definitions = (struct trace_type_definition *) (data + (sizeof(struct trace_log_descriptor) * descriptor_count));
for (i = 0; i \u0026lt; descriptor_count; i++) {
relocate_ptr((intptr_t)original_base_address, (intptr_t)new_base_address, (intptr_t *) \u0026amp;log_descriptors.params);
relocate_descriptor_parameters(original_base_address, new_base_address, \u0026amp;log_descriptors);
}
for (i = 0; i \u0026lt; type_count; i++) {
relocate_ptr((intptr_t)original_base_address, (intptr_t)new_base_address, (intptr_t *) \u0026amp;type_definitions.type_name);
relocate_ptr((intptr_t)original_base_address, (intptr_t)new_base_address, (intptr_t *) \u0026amp;type_definitions.params);
relocate_type_definition_params(original_base_address, new_base_address, \u0026amp;type_definitions);
}
}
■网友
推广方式不对吧,推广好了流量暴涨的,私信交流一下
■网友
推广方式有很多,APP固定位,应用市场替换,Jc,信息流,手机通知栏等等,主要找到好的渠道资源,专业的运营推广团队,这样成本转化效果就有了
推荐阅读
- 广东警方曝光38款存在超范围收集用户信息违规行为App
- 赣榆■违法App的幕后帮凶赣榆落网 APP排名暗藏玄机
- 在上海陆家嘴附近工作,请问去哪边租房会比较好
- 在上海五险一金不按实际工资缴会对个人造成啥影响
- 我有几个app点子,拉出来比较容易实现的一个和大家探讨,只差程序员(替你们说了)请问这个点子咋样
- 为啥Apple Store充值不能随意输入金额而是分为几个档次充值
- 请问类似实惠APP这类的“体验式营销”概念在国内有没有市场盈利及发展前景怎样呢
- 互联网创业团队,APP刚开始开发的目标和绩效咋制定
- Android怎样在不Root的前提下阻止App互相唤醒
- 为啥没有给医院、医生评分的APP或者网站